CSSNestedDeclarations

The CSSNestedDeclarations interface of the CSS Rule API is used to group nested CSSRules.

The interface allows the CSS Object Model (CSSOM to mirror the structure of CSS documents with nested CSS rules, and ensure that rules are parsed and evaluated in the order that they are declared.

Note: Implementations that do not support this interface may parse nested rules in the wrong order. See Browser compatibility for more information.

CSSRuleCSSNestedDeclarations

Instance properties

Inherits properties from its ancestor CSSRule.

CSSNestedDeclarations.style Read only

Returns the values of the nested rules.

Instance methods

No specific methods; inherits methods from its ancestor CSSRule.

Examples

undefined

CSS

The CSS below includes a selector .foo that contains two declarations and a media query.

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

This is represented by a number of JavaScript objects in the CSS Object Model:

Note: All top-level styles after the first CSSNestedDeclaration must also be represented as CSSNestedDeclaration objects in order to follow the CSS nested declarations rule

CSSOM (CSS Object Model)

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

Specifications

See Also