Spec-Zone.ru › Web APIs

CSSNestedDeclarations

Интерфейс CSSNestedDeclarations API правил CSS используется для группировки вложенных CSSRule.

Интерфейс позволяет модели CSS Object Model (CSSOM) отображать структуру документов CSS с вложенными правилами CSS и гарантировать, что правила парсятся и вычисляются в том порядке, в котором они объявлены.

Примечание: Браузеры с реализациями, которые не поддерживают этот интерфейс, могут парсить вложенные правила в неправильном порядке.

CSSRule CSSNestedDeclarations

Свойства экземпляра

Наследует свойства от предка CSSRule.

CSSNestedDeclarations.style Только для чтения

Возвращает значения вложенных правил.

Методы экземпляра

Нет специфических методов; наследует методы от предка CSSRule.

Примеры

CSS

В приведенном ниже CSS есть селектор .foo, содержащий две декларации и медиазапрос.

.foo {
  background-color: silver;
  @media (screen) {
    color: tomato;
  }
  color: black;
}

Это представлено набором JavaScript-объектов в модели CSS Object Model:

  • Объект CSSStyleRule, представляющий правило background-color: silver. Его можно получить с помощью document.styleSheets[0].cssRules[0].
  • Объект CSSMediaRule, представляющий правило @media (screen) и который можно получить с помощью document.styleSheets[0].cssRules[0].cssRules[0].
    • Объект CSSMediaRule содержит объект CSSNestedDeclaration, представляющий правило color: tomato, вложенное в правило @media (screen) . Его можно получить с помощью document.styleSheets[0].cssRules[0].cssRules[0].cssRules[0].
  • Конечное правило — объект CSSNestedDeclaration, представляющий правило color: black в таблице стилей и который можно получить с помощью document.styleSheets[0].cssRules[0].cssRules[1].

Примечание: Все правила стиля верхнего уровня после первого CSSNestedDeclaration также должны быть представлены в виде объектов CSSNestedDeclaration для соответствия правилу вложенных деклараций CSS.

CSSOM (CSS Object Model)

↳ CSSStyleRule
  .style
    - background-color: silver
  ↳ CSSMediaRule
    ↳ CSSNestedDeclarations
      .style (CSSStyleDeclaration, 1) =
      - color: tomato
  ↳ CSSNestedDeclarations
    .style (CSSStyleDeclaration, 1) =
      - color: black

Спецификации

Спецификация
Модуль CSS вложенности
# cssnesteddeclarations

Совместимость с браузерами

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
CSSNestedDeclarations 130 130 132 115 18.2 130 Нет 86 18.2 Нет 130
style 130 130 132 115 18.2 130 Нет 86 18.2 Нет 130

См. также

  • CSSNestedDeclarations.style
  • Правило вложенных деклараций

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/CSSNestedDeclarations

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API