CSS Object Model
The CSS Object Model is a set of APIs allowing to manipulate CSS from JavaScript. It is the pendant of DOM and HTML APIs, but for CSS. It allows to read and modify CSS style dynamically.
Reference
AnimationEvent
CaretPosition
(en-US)CSS
(en-US)CSSCharsetRule
CSSConditionRule
(en-US)CSSCounterStyleRule
(en-US)CSSFontFaceRule
(en-US)CSSFontFeatureValuesMap
CSSFontFeatureValuesRule
CSSGroupingRule
(en-US)CSSImportRule
(en-US)CSSKeyframeRule
(en-US)CSSKeyframesRule
(en-US)CSSMarginRule
CSSMediaRule
(en-US)CSSNamespaceRule
(en-US)CSSPageRule
(en-US)CSSRule
(en-US)CSSRuleList
(en-US)CSSStyleSheet
CSSStyleDeclaration
CSSSupportsRule
(en-US)CSSVariablesMap
CSSViewportRule
ElementCSSInlineStyle
(en-US)GeometryUtils
(en-US)GetStyleUtils
LinkStyle
(en-US)MediaList
(en-US)MediaQueryList
PseudoElement
Screen
StyleSheet
(en-US)StyleSheetList
(en-US)TransitionEvent
(en-US)
Several other interfaces are also extended by the CSSOM-related specifications: Document
, Window
, Element
, HTMLElement
, HTMLImageElement
, Range
, MouseEvent
, and SVGElement
(en-US).
Tutorials
- Determining the dimensions of elements (it needs some updating as it was made in the DHTML/Ajax era).
- Managing screen orientation
Specifications
Specification | Status | Comment |
---|---|---|
CSS Object Model (CSSOM) | Working Draft | |
CSS Object Model (CSSOM) View Module | Working Draft | |
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 | |
CSS Device Adaptation | Working Draft | |
CSS Counter Styles Level 3 | Candidate Recommendation |
Browser compatibility notes
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.