CSSStyleSheet: addRule() 方法
已弃用:此特性不再推荐。虽然某些浏览器可能仍然支持它,但它可能已经从相关的网络标准中删除,可能正在删除过程中,或者可能仅为兼容性目的而保留。请避免使用它,如果可能,请更新现有代码;请参阅本页底部的兼容性表格以指导您的决策。请注意,此特性可能随时停止工作。
已废弃的 CSSStyleSheet 接口的 addRule() 旧方法 会向样式表中添加一条新规则。您应该避免使用此方法,而应使用更标准的 insertRule() 方法。
语法
js
addRule(selector, styleBlock, index)
参数
selector-
一个指定 CSS 规则选择器部分的字符串。默认值为字符串
undefined。 styleBlock-
一个指示将应用于匹配
selector的元素的样式块的字符串。默认值为字符串undefined。 index可选-
一个可选的索引,用于在样式表的
CSSRuleList中插入新规则。如果未指定index,则使用列表中最后一个项目之后的下一个索引(即cssStyleSheet.cssRules.length的值)。
返回值
始终返回 -1。
请注意,由于关于在哪里合法插入规则的一些晦涩的规则,可能会抛出异常。有关更多信息,请参阅 insertRule()。
用法说明
此方法由浏览器通过使用模板字面量 `${selector}{${styleBlock}}` 构建字符串来实现,然后将其传递给标准的 insertRule() 方法。
因此,给定如下现有代码
js
cssStyleSheet.addRule(selector, styles, 0);
您可以使用更标准的 insertRule() 重写如下
js
cssStyleSheet.insertRule(`${selector} {${styles}}`, 0);
规范
| 规范 |
|---|
| CSS 对象模型 (CSSOM) # dom-cssstylesheet-addrule |
浏览器兼容性
加载中…