示例代碼以下(兼容主流瀏覽器和ie6以上的ie瀏覽器): css
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title></title> <style></style> </head> <body> <div id="test"></div> </body> <script src="../lib/jquery-1.8.3.min.js"></script> <script> var style = document.createElement("style"); style.type = 'text/css'; $("body").append(style); var sheet = style.sheet ? style.sheet : style.styleSheet; if(sheet.insertRule){ sheet.insertRule("#test{width:100px;height:100px;background:red;}",0); } else { sheet.addRule("#test", "width:100px;height:100px;background:red;", 0); } </script> </html>
如下兩句代碼不能互換順序,不然在大多數瀏覽器上沒法獲取sheet(瀏覽器吧style當作一個普通的dom處理,而不是一個樣式表) html
$("body").append(style); var sheet = style.sheet ? style.sheet : style.styleSheet;