HTML與CSS在Flash中的應用:
不小心看到同事Den在弄個小東西:在Flash裡使用HTML和CSS,代碼是這樣:
var myStyle:TextField.StyleSheet = new TextField.StyleSheet();
myStyle.load(sample.css);
content_txt.styleSheet = myStyle;
content_txt.multiline= true;
content_txt.wordWrap = true;
content_txt.html = true;
var story:XML = new XML();
story.ignoreWhite = true;
story.load(sample.html);
story.onLoad = function () {
content_txt.htmlText = story;
}
這個是加載外部CSS跟HTML(其實是加載XML當HTML用-_-b )的。後來Den寫了兩種把樣式寫在AS裡的方式:
var css_str:String = .aoao{color:#010101;font-weight:bold;} .aoao:hover{color:#ff0000};
myStyle.parseCSS(css_str)myStyle.setStyle(.aoao, {color:'#010101', fontWeight:'bold'});
myStyle.setStyle(.aoao:hover, {color:#ff0000});
其實HTML也可以寫在AS裡面,直接拼string就行。對於CSS在寫在AS裡還是加載外部CSS就要看情況了,用Web上還要考慮請求數,文件大小,緩存,更重要的是維護成本。不過在Web應用我也沒想到有什麼比較適合的應用,在瀏覽器裡使用HTML加載Flash之後再用Flash加載HTML和CSS意義並不大,而且支持不是一般的弱,看一下支持的HTML標籤跟CSS屬性,=。 = 本來想用來解決中文下劃線的問題,結果還是不行,據說別人是用flash畫下劃線滴。
瀏覽器的應用玩玩就算了。還是留在桌面應用吧。