Skip to main content

CSS syntax

The CSS syntax module describes, in general terms, the structure and syntax of cascading stylesheets, or CSS. It defines CSS as the language for describing the rendering of structured documents (such as HTML and XML), on the web and elsewhere.

This module doesn't define any properties, data types, functions, or at-rules. Rather, it elaborates on how all of these features should be defined and how user agents should parse CSS.

At-rules

  • none

[!NOTE] The module explicitly states that {{cssxref("@charset")}} is not an actual at-rule, but rather an unrecognized legacy rule that should be omitted when a stylesheet is grammar-checked. The only valid @charset usage is at the very beginning of a stylesheet, where it is interpreted as a special byte sequence stripped before processing the content.

Reference

Key concepts

Glossary terms

  • {{glossary("CSS_Descriptor", "CSS descriptor")}}
  • {{glossary("parse")}}
  • {{glossary("stylesheet")}}
  • {{glossary("whitespace")}}

Guides

  • Syntax

    • : Overview of CSS syntax, including CSS declarations, declaration blocks, rulesets, and statements.
  • Value definition syntax

    • : Explains the formal grammar for defining valid values for CSS properties and functions, along with semantic constraints. A guide for understanding CSS component value types, combinators, and multipliers.
  • CSS syntax error handling

    • : Overview of how the user agent handles invalid CSS.
  • Learn CSS first steps: CSS syntax

    • : Introductory guide to CSS, including an introduction to CSS syntax.

CSS selectors module:

CSS cascade module:

CSS custom properties for cascading variables module:

CSS conditional rules module:

  • {{cssxref("@media")}} at-rule
  • {{cssxref("@supports")}} at-rule

CSS Object Model (CSSOM) API:

  • {{domxref("CSSValue.cssText", "cssText")}} property
  • {{domxref("CSSStyleSheet.insertRule()", "insertRule(rule)")}} method
  • {{domxref("CSSStyleSheet.replace()", "replace(text)")}} method

WHATWG specification:

  • {{HTMLElement("style")}} element
  • {{HTMLElement("link")}} element
  • class attribute
  • rel attribute

Specifications

See also