jsGears.com 技術論壇 - AJAX, JavaScript, jQuery, 網站開發, 前端效能優化's Archiver

JS領事 發表於 2009-11-21 14:53

動態建立style元素?

例︰原本有div,class="red"
但<style>中並沒有定義red類
可以動態建立嗎?

wmh 發表於 2009-11-22 01:19

應該沒問題喔,可參考 ppk 整理的這份 W3C CSS 相容性的比較表:
[url]http://www.quirksmode.org/dom/w3c_css.html[/url]

新增的話,IE 應該是用 addRule(),Firefox 或其他瀏覽器都支援 insertRule()
[code js]
//IE
document.styleSheets[1].addRule('pre', 'font: 14px verdana');

//Firefox
var x = document.styleSheets[1];
x.insertRule('pre {font: 14px verdana}', x.cssRules.length);
[/code]

JS領事 發表於 2009-11-24 21:00

成功了 :D
有空再把文章看完

……不過這應該不算"建立"style元素
還要在head內先定義空白的style才行……
還是先createElement?……

[[i] 本帖最後由 JS領事 於 2009-11-24 21:01 編輯 [/i]]

wmh 發表於 2009-11-24 21:44

嗯,<style> 標籤用 createElement 再 insert 即可。

頁: [1]

Powered by Discuz! Archiver  © 2001-2009 Comsenz Inc.