--- title: CSSStyleDeclaration slug: Web/API/CSSStyleDeclaration tags: - API - CSSOM - 参考 - 接口 translation_of: Web/API/CSSStyleDeclaration ---

{{ APIRef("CSSOM") }}

CSSStyleDeclaration 接口表示一个对象,它是一个 CSS 声明块,CSS 属性键值对的集合。它暴露了样式信息和各种与样式相关的方法和属性。

CSSStyleDeclaration 对象可被暴露于三种不同的 API 下:

属性

{{domxref("CSSStyleDeclaration.cssText")}}
当前声明块的文本内容。设置此属性会改变样式。
{{domxref("CSSStyleDeclaration.length")}}
属性的数量。参照下面的 {{domxref("CSSStyleDeclaration.item()", 'item()')}} 方法。
{{domxref("CSSStyleDeclaration.parentRule")}}
包含当前声明块的 {{domxref("CssRule")}}。

方法

{{domxref("CSSStyleDeclaration.getPropertyPriority()")}}
返回可选的优先级,"important"。
{{domxref("CSSStyleDeclaration.getPropertyValue()")}}
返回给定属性的值。
{{domxref("CSSStyleDeclaration.item()")}}
返回用index标记的属性名,当index越界时返回空字符串。
另一个可选方案:使用nodeList[i](在i越界时返回 undefined)获取。通常在非JavaScript Dom 实现方案是很有用。
{{domxref("CSSStyleDeclaration.removeProperty()")}}
从 CSS 声明块中删除属性。
{{domxref("CSSStyleDeclaration.setProperty()")}}
在CSS声明块中修改现有属性或设置新属性。
{{domxref("CSSStyleDeclaration.getPropertyCSSValue()")}} {{obsolete_inline}}
仅在火狐浏览器中支持 getComputedStyle. 返回 {{ domxref("CSSPrimitiveValue") }} or null for shorthand properties.

范例

var styleObj = document.styleSheets[0].cssRules[0].style;
console.log(styleObj.cssText);

for (var i = styleObj.length; i--;) {
  var nameString = styleObj[i];
  styleObj.removeProperty(nameString);
}

console.log(styleObj.cssText);

规范

规范 状态 备注
{{SpecName('CSSOM', '#the-cssstyledeclaration-interface', 'CSSStyleDeclaration')}} {{Spec2('CSSOM')}}
{{SpecName('DOM2 Style', 'css.html#CSS-CSSStyleDeclaration', 'CSSStyleDeclaration')}} {{Spec2('DOM2 Style')}} Initial definition

浏览器兼容性

{{Compat("api.CSSStyleDeclaration")}}

参见