CSS Properties and Values API
TheCSS Properties and Values API — part of theCSS Houdini umbrella of APIs — allows developers to explicitly define theirCSS custom properties, allowing for property type checking, default values, and properties that do or do not inherit their value.
In this article
Interfaces
CSS.registerPropertyDefines how a browser should parseCSS custom properties. Access this interface through
CSS.registerPropertyinJavaScript.@propertyDefines how a browser should parseCSS custom properties. Access this interface through
@propertyat-rule inCSS.
Examples
The following will register acustom property named--my-color usingCSS.registerProperty inJavaScript.--my-color will use the CSS color syntax, it will have a default value of#c0ffee, and it will not inherit its value:
window.CSS.registerProperty({ name: "--my-color", syntax: "<color>", inherits: false, initialValue: "#c0ffee",});The same registration can take place inCSS using the@propertyat-rule:
@property --my-color { syntax: "<color>"; inherits: false; initial-value: #c0ffee;}Specifications
| Specification |
|---|
| CSS Properties and Values API Level 1> # the-css-property-rule-interface> |
| CSS Properties and Values API Level 1> # the-registerproperty-function> |