AS3.0的元素處理(四)–styleSheet
styleSheet和TextFormat類似,也是用來定義文字格式的,二者實現的效果也差不多。但是,styleSheet和TextFormat之間,是存在相容衝突的,設定了styleSheet的文字,將無法再使用TextFormat類,否則編譯時會產生報錯資訊。
那麼,這兩者之間的區別是什麼呢,我大致歸納了下,有以下幾點:
(1) styleSheet只能對HtmlText使用,如果沒有設定該屬性則無法使用。TextFormat則不受該限制影響。
(2) styleSheet可以通過修改外部CSS檔案來變更文字格式,不用重新編譯生成的SWF檔案,這個也是styleSheet最大的優勢。
(3) 設定了styleSheet的文字欄位是不可以再編輯的。所以如果是一個輸入文字的話,應該避免使用styleSheet。
由上也可以看到,CSS雖然說可以在Flash檔案中建立,但我覺得,只有外部載入的CSS檔案才有意義,否則,真的體現不出styleSheet的優勢了。同時,如果你要應用styleSheet的話,建議先看下幫助,因為Flash支援的styleSheet樣式元素並不多。
下面我介紹下如何載入外部CSS檔案,首先,我們要建立一個CSS檔案,CSS檔案我就完全不懂了,所以只好抄襲一段程式碼來,大家把下面這段程式碼複製到文字檔案,然後命名為example.css,和Flash檔案放在同一個目錄下:
p {
font-family: Times New Roman, Times, _serif;
font-size: 14;
}
h1 {
font-family: Arial, Helvetica, _sans;
font-size: 20;
font-weight: bold;
}
.bluetext {
color: #0000CC;
}
如果正確套用該CSS檔案,文字會呈現藍色字型。然後我們開啟Flash,寫入AS程式碼如下:
var loader:URLLoader = new URLLoader();
var req:URLRequest = new URLRequest(“example.css”);
loader.load(req);
loader.addEventListener(Event.COMPLETE, onLoaded);
function onLoaded(event:Event) {
var sheet:StyleSheet = new StyleSheet(); //定義styleSheet例項
sheet.parseCSS(loader.data); //解析外部CSS檔案
var myText:TextField = new TextField();
myText.styleSheet = sheet; //呼叫styleSheet例項
myText.htmlText = “<span class=`bluetext`>測試文字</span>”; //採用styleSheet
addChild(myText);
}
最後我再做點補充說明:
(1) 首先要建立styleSheet例項,然後用parseCSS()方法解析讀取的外部CSS檔案
(2) 必須在設定htmlText屬性之前應用樣式表,否則CSS樣式是不會生效的。
(3) 在htmlText檔案中呼叫CSS的方法和正式網頁中相同。
相關文章
- AS3.0的元素處理(五)– 管理Flash右鍵選單薦S3
- 讓你的Qt桌面程式看上去更加native(四):stylesheetQT
- 如何處理內聯元素中的空隙(譯)
- JQuery乾貨篇之處理元素jQuery
- PHP 遍歷元素並分批處理PHP
- SQLite 併發的四種處理方式SQLite
- 自然語言處理NLP(四)自然語言處理
- 如何為新增的元素註冊事件處理函式事件函式
- JavaScript中的圖片處理與合成(四)JavaScript
- 四類ADSL故障的剖析和處理
- Flink處理函式實戰之四:視窗處理函式
- 第四篇:資料預處理(一) - 缺失值處理
- js dom元素事件處理簡單介紹JS事件
- Java入門教程四(字串處理)Java字串
- 樹形結構的處理——組合模式(四)模式
- [草稿] CSS Reset 中應該處理那些元素呢?CSS
- 陣列的操作處理與陣列元素的氣泡排序 (轉)陣列排序
- 最適合使用RxJava處理的四種場景RxJava
- 一種高效的 vector 四則運算處理方法
- 請求的鏈式處理——職責鏈模式(四)模式
- Flash AS3.0實戰S3
- Mybatis原始碼之美:3.4.解析處理parameterMap元素MyBatis原始碼
- 蘋果A12是四核還是六核處理器?iPhone Xs的處理器是幾核的蘋果iPhone
- Storm基礎(四)保證訊息處理ORM
- 表格資料處理的2種寫法,偽元素和操作dom
- jQuery為非同步載入的元素註冊事件處理函式jQuery非同步事件函式
- windows bat系列11:for處理案例四 去掉字串中的空格WindowsBAT字串
- jquery為動態新增元素註冊事件處理函式jQuery事件函式
- AS3.0 Profiler 效能分析利器S3
- 多對一處理 和一對多處理的處理
- 數字影像處理實驗(四)影像銳化
- js 處理四則運算失去精度問題JS
- java入門 -- Java I/O(四) 異常處理Java
- 處理多維度變化——橋接模式(四)橋接模式
- 小米海外發布四款Redmi Note 11 涵蓋四款處理器
- 關於RF對於不在螢幕內的頁面元素的處理辦法
- 處理百萬級以上的資料處理
- AS3.0升級埋坑之路S3