Списки таблиц стилей: интерфейс StyleSheetList
Поддержка : | | Только для HTML-документов. | | | Соответствует стандарту. |
Интерфейс StyleSheetList реализует упорядоченные списки таблиц стилей. Он имеет единственное свойство length, возвращающее количество таблиц в списке, и единственный метод item, возвращающий элемент списка с заданным номером (элементы списка нумеруются, начиная с нуля).
Свойство length
Синтаксис: список.length Изменяемое: нет
Поддержка : | | Только для HTML-документов. | | | Соответствует стандарту. |
Свойство length возвращает количество таблиц в данном списке. Допустимые индексы элементов списка лежат в диапазоне от 0 до length-1 включительно. Следующий пример выводит на экран количество таблиц стилей в документе:
alert(document.styleSheets.length);
Метод item
Синтаксис: список.item(index) Аргументы: index - числовое выражение Результат: объект StyleSheet или null Исключения: нет
Поддержка : | | Только для HTML-документов. | | | Соответствует стандарту. |
Метод item возвращает элемент списка таблиц с заданным индексом в качестве результата. Если индекс выходит за пределы диапазона элементов списка, то возвращается null. Пример:
alert(document.styleSheets.item(0).href);
JavaScript позволяет нам записать обращение к элементу списка более компактно. Предыдущий оператор может выглядеть так:
alert(document.styleSheets[0].href);
Internet Explorer поддерживает еще одну форму обращения к элементу списка, а именно:
alert(document.styleSheets(0).href);
Однако, эта форма является нестандартной, и ей лучше не пользоваться.
Таблицы стилей на языке CSS
Для практической реализации динамических стилей мы должны перейти от абстрактных интерфейсов, описанных выше, к их конкретной реализации применительно к языку CSS (точнее, CSS2). Такой конкретизацией интерфейса StyleSheet для CSS является интерфейс CSSStyleSheet, который обеспечивает доступ к коллекции правил, содержащихся в таблице стилей, и содержит методы, позволяющие изменять эту коллекцию. Но прежде, чем перейти к его описанию, мы должны описать интерфейсы, соответствующие отдельных правилам и директивам языка CSS. Все эти интерфейсы являются производными от базового интерфейса CSSRule, с которого мы и начнем рассмотрение.
Все объекты, связанные с CSS, являются "живыми" в том смысле, что изменение таблицы стилей влечет изменение всех соответствующих стилей.
1 2 3 4 5 6 7
8 8 8
| |