CSSRule (Java SE 15 & JDK 15)
Description: declaration: module: jdk.xml.dom, package: org.w3c.dom.css, interface: CSSRule
Keywords: org.w3c.dom.css.CSSRule interface

Module jdk.xml.dom
Package org.w3c.dom.css

# Interface CSSRule

All Known Subinterfaces:
  `CSSCharsetRule`, `CSSFontFaceRule`, `CSSImportRule`, `CSSMediaRule`, `CSSPageRule`, `CSSStyleRule`, `CSSUnknownRule`

    public interface CSSRule

The `CSSRule` interface is the abstract base interface for any type of CSS statement. This includes both rule sets and at-rules. An implementation is expected to preserve all rules specified in a CSS style sheet, even if the rule is not recognized by the parser. Unrecognized rules are represented using the `CSSUnknownRule` interface.

See also the Document Object Model (DOM) Level 2 Style Specification.

Since:
  1.4, DOM Level 2

- ## Field Summary

  Fields
  Modifier and Type | Field | Description
  --- | --- | ---
  `static short` | `CHARSET_RULE` | The rule is a `CSSCharsetRule`.
  `static short` | `FONT_FACE_RULE` | The rule is a `CSSFontFaceRule`.
  `static short` | `IMPORT_RULE` | The rule is a `CSSImportRule`.
  `static short` | `MEDIA_RULE` | The rule is a `CSSMediaRule`.
  `static short` | `PAGE_RULE` | The rule is a `CSSPageRule`.
  `static short` | `STYLE_RULE` | The rule is a `CSSStyleRule`.
  `static short` | `UNKNOWN_RULE` | The rule is a `CSSUnknownRule`.

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `String` | `getCssText()` | The parsable textual representation of the rule.
  `CSSRule` | `getParentRule()` | If this rule is contained inside another rule (e.g. a style rule inside an @media block), this is the containing rule.
  `CSSStyleSheet` | `getParentStyleSheet()` | The style sheet that contains this rule.
  `short` | `getType()` | The type of the rule, as defined above.
  `void` | `setCssText​(String cssText)` | The parsable textual representation of the rule.

- ## Field Details

  - ### UNKNOWN_RULE

    static final short UNKNOWN_RULE
    The rule is a `CSSUnknownRule`.
    See Also:
      Constant Field Values

  - ### STYLE_RULE

    static final short STYLE_RULE
    The rule is a `CSSStyleRule`.
    See Also:
      Constant Field Values

  - ### CHARSET_RULE

    static final short CHARSET_RULE
    The rule is a `CSSCharsetRule`.
    See Also:
      Constant Field Values

  - ### IMPORT_RULE

    static final short IMPORT_RULE
    The rule is a `CSSImportRule`.
    See Also:
      Constant Field Values

  - ### MEDIA_RULE

    static final short MEDIA_RULE
    The rule is a `CSSMediaRule`.
    See Also:
      Constant Field Values

  - ### FONT_FACE_RULE

    static final short FONT_FACE_RULE
    The rule is a `CSSFontFaceRule`.
    See Also:
      Constant Field Values

  - ### PAGE_RULE

    static final short PAGE_RULE
    The rule is a `CSSPageRule`.
    See Also:
      Constant Field Values

- ## Method Details

  - ### getType

    short getType()
    The type of the rule, as defined above. The expectation is that binding-specific casting methods can be used to cast down from an instance of the `CSSRule` interface to the specific derived interface implied by the `type`.

  - ### getCssText

    String getCssText()
    The parsable textual representation of the rule. This reflects the current state of the rule and not its initial value.

  - ### setCssText

    void setCssText​(String cssText) throws DOMException
    The parsable textual representation of the rule. This reflects the current state of the rule and not its initial value.
    Throws:
      `DOMException` - SYNTAX_ERR: Raised if the specified CSS string value has a syntax error and is unparsable.
      INVALID_MODIFICATION_ERR: Raised if the specified CSS string value represents a different type of rule than the current one.
      HIERARCHY_REQUEST_ERR: Raised if the rule cannot be inserted at this point in the style sheet.
      NO_MODIFICATION_ALLOWED_ERR: Raised if the rule is readonly.

  - ### getParentStyleSheet

    CSSStyleSheet getParentStyleSheet()
    The style sheet that contains this rule.

  - ### getParentRule

    CSSRule getParentRule()
    If this rule is contained inside another rule (e.g. a style rule inside an @media block), this is the containing rule. If this rule is not nested inside any other rules, this returns `null`.