StyleSheetList
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
StyleSheetList インターフェイスは StyleSheet のリストを表します。
これは配列風のオブジェクトですが、 Array のメソッドを適用しての反復処理はできません。しかし標準の for ループと添字による反復処理、もしくは Array への変換ができます。
例
>for ループを使用して document の styleSheet オブジェクトを取得
js
for (let i = 0; i < document.styleSheets.length; i++) {
let styleSheet = document.styleSheets[i];
}
Array のメソッドを適用してすべての CSS ルールを取得
const allCSS = [...document.styleSheets]
.map(styleSheet => {
try {
return [...styleSheet.cssRules]
.map(rule => rule.cssText)
.join('');
} catch (e) {
console.log('Access to stylesheet %s is denied. Ignoring...', styleSheet.href);
}
})
.filter(Boolean)
.join('\n');
仕様書
| Specification |
|---|
| CSS Object Model (CSSOM)> # the-stylesheetlist-interface> |
ブラウザーの互換性
Loading…