Этот ответ описывает, почему некоторые правила могут быть недоступны.
Длинным и коротким является то, что если ресурсы CSS являются междоменными, то ограничения безопасности препятствуют доступу.
Кроме того, в этом ответе есть эта ссылка , которая описывает интерфейс таблицы стилей и в явном виде заявляет приведенное выше утверждение, где нельзя получить доступ к ресурсам из разных источников, и это относится к cssRules,среди других свойств объекта document.styleSheets
.
Приведенный ниже код будет корректно перехватывать эту ошибку и выводить вывод ошибки или cssRule на консоль.
for (let i in [...document.styleSheets]){
try{
console.log(styles[i]['cssRules']);
}catch(e){
console.log(e);
}
}