动态创建样式表在各浏览器中的差异
<!doctype html>
<head></head>
<body>
<span id="con">xxx</span>
<script>
var css = document.createElement('style');
css.setAttribute('type', 'text/css');
var cssText = 'span{color:Red;}';
if(css.styleSheet) { // IE
css.styleSheet.cssText = cssText
} else {
css.appendChild(document.createTextNode(cssText));
}
document.getElementsByTagName("head")[0].appendChild(css);
</script>
<head></head>
<body>
<span id="con">xxx</span>
<script>
var css = document.createElement('style');
css.setAttribute('type', 'text/css');
var cssText = 'span{color:Red;}';
if(css.styleSheet) { // IE
css.styleSheet.cssText = cssText
} else {
css.appendChild(document.createTextNode(cssText));
}
document.getElementsByTagName("head")[0].appendChild(css);
</script>
对于标准浏览器,直接使用css.innerHTML也可以修改HTMLStyleElement的css规则;
但是对于IE会导致一个“unknow runtime error”。