StyleSheetList

StyleSheetList インターフェイスは  StyleSheet のリストを表します。

これは配列風のオブジェクトですが、Array のメソッドを適用しての反復処理はできません。しかし標準の for ループと添字による反復処理、もしくは  Array への変換ができます。

for ループを使用して document styleSheet オブジェクトを取得

for (var i=0; i < document.styleSheets.length; i++){
  var styleSheet = document.styleSheets[i];
}

Array のメソッドを適用してすべての CSS ルールを取得

var allCSS = 
    [].slice.call(document.styleSheets)
        .reduce(function (prev, styleSheet) {
            if (styleSheet.cssRules) {
                return prev +
                    [].slice.call(styleSheet.cssRules)
                        .reduce(function (prev, cssRule) {
                            return prev + cssRule.cssText;
                        }, '');
            } else {
                return prev;
            }
        }, '');

仕様

仕様書 策定状況 コメント
CSS Object Model (CSSOM)
CSSStyleSheetList の定義
草案

ブラウザー実装状況

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung Internet
StyleSheetListChrome 完全対応 1Edge 完全対応 ありFirefox 完全対応 31IE ? Opera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありFirefox Android 完全対応 31Opera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android ?
itemChrome 完全対応 1Edge 完全対応 12Firefox 完全対応 31IE ? Opera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありFirefox Android 完全対応 31Opera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android ?
lengthChrome 完全対応 1Edge 完全対応 12Firefox 完全対応 31IE ? Opera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありFirefox Android 完全対応 31Opera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android ?

凡例

完全対応  
完全対応
実装状況不明  
実装状況不明