Правила CSS: интерфейс CSSStyleRule
Поддержка : | | Нестандартная. | | | Соответствует стандарту. |
Интерфейс CSSStyleRule - это интерфейс, производный от CSSRule и соответствующий одному правилу языка CSS. Напомним, что правило CSS состоит из селектора и блока деклараций. Поэтому данный интерфейс имеет два дополнительных свойства:
Свойства интерфейса CSSStyleRuleСвойство | Изменяемое | Модель | Описание |
---|
selectorText | Да | DOM 2 | Текст селектора. | style | Нет | DOM 2 | Блок деклараций. |
Свойство selectorText
Синтаксис: объект.selectorText Изменяемое: да Иcключения: SYNTAX_ERR, NO_MODIFICATION_ALLOWED_ERR (при записи)
Поддержка : | | Нестандартная. | | | Соответствует стандарту. |
Свойство selectorText позволяет читать или задавать текст селектора данного правила. При задании нового текста селектора возможна генерация перечисленных выше исключений. Следующий пример выводит на экран текст селектора первого оператора первой таблицы стилей документа:
alert(document.styleSheets[0].cssRules[0].selectorText);
В Internet Explorer этот оператор должен выглядеть так:
alert(document.styleSheets[0].rules[0].selectorText);
Свойство style
Синтаксис: объект.style Изменяемое: нет
Поддержка : | | Нестандартная. | | | Соответствует стандарту. |
Свойство style возвращает объект CSSStyleDeclaration, содержащий блок деклараций данного правила. Пример чтения значения отдельного свойства CSS:
alert(document.styleSheets[0].cssRules[0].style.fontFamily);
В Internet Explorer этот оператор должен выглядеть так:
alert(document.styleSheets[0].rules[0].style.fontFamily);
Директива @media: интерфейс CSSMediaRule
Поддержка : | | Не поддерживается. | | | Не поддерживается. |
Интерфейс CSSMediaRule - это интерфейс, производный от CSSRule и соответствующий директиве @media. Он имеет следующие дополнительные свойства и методы:
Свойства интерфейса CSSMediaRuleСвойство | Изменяемое | Модель | Описание |
---|
cssRules | Нет | DOM 2 | Коллекция правил директивы. | media | Нет | DOM 2 | Коллекция устройств отображения. |
Методы интерфейса CSSMediaRuleМетод | Модель | Описание |
---|
deleteRule | DOM 2 | Удаляет заданное правило. | insertRule | DOM 2 | Вставляет новое правило. |
Свойство cssRules
Синтаксис: объект.cssRules Изменяемое: нет
Поддержка : | | Не поддерживается. | | | Не поддерживается. |
Свойство cssRules возвращает объект CSSRuleList, содержащий список правил данной директивы. Пример:
alert(document.styleSheets[0].cssRules[0].cssRules.length);
Свойство media
Синтаксис: объект.media Изменяемое: нет
Поддержка : | | Не поддерживается. | | | Не поддерживается. |
Свойство media возвращает объект MediaList, содержащий список устройств отображения данной директивы. Пример:
alert(document.styleSheets[0].cssRules[0].media.length);
Метод deleteRule
Синтаксис: объект.deleteRule(index) Аргументы: index - числовое выражение Исключения: INDEX_SIZE_ERR, NO_MODIFICATION_ALLOWED_ERR
Поддержка : | | Не поддерживается. | | | Не поддерживается. |
Метод deleteRule удаляет правило с номером index из коллекции cssRules. Индекс должен лежать в диапазоне от 0 до cssRules.length-1 включительно. Пример:
document.styleSheets[0].cssRules[0].deleteRule(0);
Метод insertRule
Синтаксис: объект.insertRule(rule, index) Аргументы: rule - выражение типа DOMString index - числовое выражение Исключения: HIERARCHY_REQUEST_ERR, INDEX_SIZE_ERR, NO_MODIFICATION_ALLOWED_ERR, SYNTAX_ERR
Поддержка : | | Не поддерживается. | | | Не поддерживается. |
Метод insertRule вставляет новое правило в коллекцию cssRules перед правилом с номером index. Текст правила, включая селектор и декларацию, задается аргументом rule. Индекс должен лежать в диапазоне от 0 до cssRules.length; если он равен cssRules.length, то новое правило добавляется в конец коллекции. Пример:
document.styleSheets[0].cssRules[0].insertRule("BODY { color: red }", 0);
1 2 3 4 5 6 7
8 8 8
|