我一直在寻找一些不同的东西,我想使用 JavaScript 来全局调整样式。我想通过更改指示元素样式的 CSS 规则来做到这一点(类似于通过 Webkit 中的检查器执行此操作),但在来到 https://developer.mozilla.org/en/DOM/CSSStyleRule 之后我现在不知道这是否可能:
style
Returns the
CSSStyleDeclaration
object for the rule. Read only.
那么,有没有办法在 JavaScript 中更改更高级别的样式?
最佳答案
要修改现有样式,请在 document.styleSheets
中找到样式表。或来自 .sheet
<style>
的属性(property)或 <link>
要修改的元素。然后在它们所在的任何规则中修改属性(请参阅 https://developer.mozilla.org/en/DOM/CSSRuleList )。我建议不要使用 CSSOM 修改属性,因为浏览器对通过 CSSOM 修改 CSS 属性的支持非常少(没有任何浏览器支持它)。相反,只需设置一个字符串值。
如果您只想插入一个新规则,只需从上面的方法中获取一个样式表,或者 document.documentElement.appendChild(document.createElementNS("http://www.w3.org/1999/xhtml","style")).sheet
.然后使用 insertRule
添加您的规则。
关于javascript - 更改样式以在 JavaScript 中按元素执行的唯一方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7136569/