CSS Properties and Values API

CSS 属性与值 APICSS Houdini API 家族的一部分,它允许开发者显式定义他们的 CSS 自定义属性,从而实现属性类型检查、默认值以及控制属性是否继承其值。

接口

CSS.registerProperty

定义浏览器应如何解析 CSS 自定义属性。通过 JavaScript 中的 CSS.registerProperty 访问此接口。

@property

定义浏览器应如何解析 CSS 自定义属性。通过 CSS 中的 @property at-rule 访问此接口。

示例

以下代码将使用 JavaScript 中的 CSS.registerProperty 注册一个名为 --my-color自定义属性--my-color 将使用 CSS 颜色语法,默认值为 #c0ffee,并且不继承其值。

js
window.CSS.registerProperty({
  name: "--my-color",
  syntax: "<color>",
  inherits: false,
  initialValue: "#c0ffee",
});

使用 CSS 中的 @property at-rule 可以进行相同的注册:

css
@property --my-color {
  syntax: "<color>";
  inherits: false;
  initial-value: #c0ffee;
}

规范

规范
CSS 属性和值 API Level 1
# the-css-property-rule-interface
CSS 属性和值 API Level 1
# the-registerproperty-function

浏览器兼容性

api.CSSPropertyRule

api.CSS.registerProperty_static

另见