CSS Object Model (CSSOM)

The CSS Object Model is a set of APIs allowing the manipulation of CSS from JavaScript. It is much like the DOM, but for the CSS rather than the HTML. It allows users to read and modify CSS style dynamically.

Reference

CSS Typed Object Model This is an experimental API that should not be used in production code.

Experimental

This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

  • CSSImageValue This is an experimental API that should not be used in production code.
  • CSSKeywordValue This is an experimental API that should not be used in production code.
  • CSSMathInvert This is an experimental API that should not be used in production code.
  • CSSMathMax This is an experimental API that should not be used in production code.
  • CSSMathMin This is an experimental API that should not be used in production code.
  • CSSMathNegate This is an experimental API that should not be used in production code.
  • CSSMathProduct This is an experimental API that should not be used in production code.
  • CSSMathSum This is an experimental API that should not be used in production code.
  • CSSMathValue This is an experimental API that should not be used in production code.
  • CSSMatrixComponent This is an experimental API that should not be used in production code.
  • CSSNumericArray This is an experimental API that should not be used in production code.
  • CSSNumericValue This is an experimental API that should not be used in production code.
  • CSSPerspective This is an experimental API that should not be used in production code.
  • CSSPositionValue This is an experimental API that should not be used in production code.
  • CSSRotate This is an experimental API that should not be used in production code.
  • CSSScale This is an experimental API that should not be used in production code.
  • CSSSkew This is an experimental API that should not be used in production code.
  • CSSSkewX This is an experimental API that should not be used in production code.
  • CSSSkewY This is an experimental API that should not be used in production code.
  • CSSStyleValue This is an experimental API that should not be used in production code.
  • CSSTransformComponent This is an experimental API that should not be used in production code.
  • CSSTransformValue This is an experimental API that should not be used in production code.
  • CSSTranslate This is an experimental API that should not be used in production code.
  • CSSUnitValue This is an experimental API that should not be used in production code.
  • CSSUnparsedValue This is an experimental API that should not be used in production code.
  • CSSVariableReferenceValue This is an experimental API that should not be used in production code.
  • StylePropertyMap This is an experimental API that should not be used in production code.
  • StylePropertyMapReadOnly This is an experimental API that should not be used in production code.

Obsolete CSSOM interfaces This is an obsolete API and is no longer guaranteed to work.

Deprecated

This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.

  • CSSPrimitiveValue This is an obsolete API and is no longer guaranteed to work.
  • CSSValue This is an obsolete API and is no longer guaranteed to work.
  • CSSValueList This is an obsolete API and is no longer guaranteed to work.

Tutorials

Specifications

Specification Status Comment
CSS Typed OM Level 1 Working Draft
CSS Painting API Level 1 Working Draft Extended the CSS interface with the paintWorklet static property.
CSS Object Model (CSSOM) View Module Working Draft Defined the Screen and MediaQueryList interfaces and the MediaQueryListEvent event and MediaQueryListListener event listener.
CSS Object Model (CSSOM) Working Draft Extended the CSS interface and provides the base for the modern CSSOM specification.
Screen Orientation API Working Draft
CSS Fonts Module Level 3 Recommendation
CSS Animations Level 1 Working Draft
CSS Transitions Working Draft
CSS Custom Properties for Cascading Variables Module Level 1 Candidate Recommendation
CSS Conditional Rules Module Level 3 Candidate Recommendation Defined the CSS interface.
CSS Device Adaptation Working Draft
CSS Counter Styles Level 3 Candidate Recommendation
Document Object Model (DOM) Level 2 Style Specification Obsolete Initial definition.

Browser compatibility

All these features have been added little by little over the years to the different browsers: it was a quite complex process that can't be summarized in a simple table. Please refer to the specific interfaces for its availability.

See also