document.styleSheets
只读属性,返回一个由 StyleSheet
对象组成的数组,每个StyleSheet
对象都是一个文档中链接或嵌入的样式表。
StyleSheet
对象具有cssRules
属性,是一个数组,同一个style中的每一条样式都是数组中的一项CSSStyleRule
或CSSKeyframeRule
等,并具有cssText
等属性。其中CSSStyleRule
对象的selectorText
和style
属性可修改。
var cssRule = document.styleSheets[0].cssRules[0];
cssRule.style.fontWeight = "bold";
cssRule.selectorText = "div span";
- shadow dom 中也有 styleSheets 属性
var cssRule = document.querySelector('#div').shadowRoot.styleSheets[0].cssRules[0];
stylesheet.insertRule(rule, index)
用于向StyleSheet
对象中插入新的css内容
- rule:必需,要插入的新规则。
- index:可选,规定新规则插入的位置,默认值为0,也就是在样式表起始位置插入。
let styleSheet = document.styleSheets[0];
styleSheet.insertRule("#ant{color:blue}");