动态更改注入的CSS类...好吗? ...坏?

时间:2014-07-21 20:40:08

标签: javascript css

动态更改注入的CSS类......好吗? ...坏?

我发现'需要'来修改我注入到javascript中的标头的CSS类。因为我动态地构建了类并将其注入到头文件中,所以我发现修改Class的文本并将其放回到CSS类定义中更容易,从而更改它。

通过注入,我的意思是: var style = document.createElement('style'); style.type = 'text/css'; style.innerHTML = ".classname { ...css text... }"; document.getElementsByTagName('head')[0].appendChild(style);

通过修改类,我的意思是简单地更改文本: { ...css text... }

并将其放回去: style.innerHTML = ".classname { ...new css text... }";

我之前真的没有看到这件事,并且问我是否有理由不经常这样做? ......也就是说,“这是一种不好的做法吗?”也许“这可能不起作用的浏览器/设备组合?”

谢谢。

1 个答案:

答案 0 :(得分:3)

这是一种不好的做法。 CSS类应该有一个定义。有条件地修改类会使您的代码难以遵循并且难以维护。

正确的方法是为每个条件创建一个单独的CSS类,或者使用Javascript直接修改DOM。