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

瀏覽器相容性

另見