javascript - 如何在IE8中动态创建CSS类

标签 javascript html css ie8-browser-mode

我需要在 IE8 中使用 JavaScript 动态创建 CSS 样式表类。

我在其他浏览器中使用了以下代码:

var style = document.createElement('style');
style.type = 'text/css';
style.innerHTML = '.cssClass { color: #F00; }';
document.getElementsByTagName('head')[0].appendChild(style);

它在除 IE8 之外的所有浏览器中都能正常工作。如何在 IE8 中实现同样的效果?

最佳答案

根据MSDN :

The innerHTML property is read-only on the col, colGroup, frameSet, html, head, style, table, tBody, tFoot, tHead, title, and tr objects.

所以,尝试使用innerText来编写这些类。

更新:

您可以使用:

style.styleSheet.cssText = '.cssClass { color: #F00; }';

或者做一个测试:

if (style.styleSheet){
    style.styleSheet.cssText = '.cssClass { color: #F00; }';
} else {
    style.appendChild(document.createTextNode('.cssClass { color: #F00; }'));
}

希望,它现在可以运行了! :)

关于javascript - 如何在IE8中动态创建CSS类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30099441/

相关文章:

javascript - 如何在选择框上方获取文本?

javascript - 从父范围数组中删除元素

javascript - 一个接一个地运行几个 exec() 命令

javascript - rails : How to turn JS object to array params

javascript - 将 html 输入转换为正确的编码

html - bootstrap3 - 如何在折叠模式下更改背景颜色

html - 在 Bootstrap 列之间添加边距,同时为 12 列宽的列删除边距

javascript - 如何通过POST方法以隐藏形式发送信息?

javascript - 在不将 div 推到下方的情况下展开 div

css - 为无序列表/有序列表定义自定义样式规则