CSSStyleDeclaration - 表示 CSS 属性 - 值对的集合
概要
CSSStyleDeclaration
表示 CSS 属性 - 值对的集合。它在一些 API 中使用:
-
HTMLElement.style
- 操纵单个元素的样式 (<elem style="...">
); - 规则是
CSSStyleRule
时,样式表中cssRule
style 属性返回的声明块的接口。 -
CSSStyleDeclaration
也是 window.getComputedStyle() 返回的一个只读接口。
声明块是出现在大括号内的样式规则的一部分,它实际上提供了样式定义(选择器是大括号之前的部分)。
属性
CSSStyleDeclaration.cssText
文本表示的声明块。设置该属性会改变样式。
CSSStyleDeclaration.length
只读
属性的数量。请参阅下面的 item()
方法。
CSSStyleDeclaration.parentRule
只读
包含了 CSSRule
。
方法
CSSStyleDeclaration.getPropertyPriority()
返回可选的优先级,important
。
CSSStyleDeclaration.getPropertyValue()
返回给定属性名称的属性值。
CSSStyleDeclaration.item()
返回属性名称。
CSSStyleDeclaration.removeProperty()
从 CSS 声明块中移除一个属性。
CSSStyleDeclaration.setProperty()
修改现有的 CSS 属性或在声明块 / 中创建新的 CSS 属性。
CSSStyleDeclaration.getPropertyCSSValue()
只在 Firefox 中通过 getComputedStyle
支持。对于简写属性,属性值将返回 CSSPrimitiveValue
或 null
。
实例
更改第一个样式表第一个规则的样式
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);
规范
规范 | 状态 | 备注 |
---|---|---|
CSS Object Model (CSSOM) CSSStyleDeclaration 的定义 |
工作草案 | - |
Document Object Model (DOM) Level 2 Style Specification CSSStyleDeclaration 的定义 |
已过时 | 初始定义 |
桌面浏览器兼容性
特性 | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
基础支持 | 1 | 未知 | 1 | 未知 | 支持 | 未知 |
cssText |
支持 | 未知 | 支持 | 未知 | 支持 | 未知 |
length |
支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
item |
支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
getPropertyValue |
支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
getPropertyCSSValue |
支持 — 411 | 不支持 | 支持 — 622 | 不支持 | 15 — 281 | 支持 |
getPropertyPriority |
支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
setProperty |
支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
removeProperty |
支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
parentRule |
支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
cssFloat |
支持 | 未知 | 不支持 | 未知 | 支持 | 未知 |
移动浏览器兼容性
特性 | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
基础支持 | 支持 | 支持 | 未知 | 4 | 未知 | 支持 | 未知 |
cssText |
支持 | 支持 | 未知 | 支持 | 未知 | 支持 | 未知 |
length |
支持 | 支持 | 支持 | 支持 | 未知 | 支持 | 支持 |
item |
支持 | 支持 | 支持 | 支持 | 未知 | 支持 | 支持 |
getPropertyValue |
支持 | 支持 | 支持 | 支持 | 未知 | 支持 | 支持 |
getPropertyCSSValue |
支持 | 支持 — 411 | 不支持 | 支持 | 未知 | 15 — 281 | 支持 |
getPropertyPriority |
支持 | 支持 | 支持 | 支持 | 未知 | 支持 | 支持 |
setProperty |
支持 | 支持 | 支持 | 支持 | 未知 | 支持 | 支持 |
removeProperty |
支持 | 支持 | 支持 | 支持 | 未知 | 支持 | 支持 |
parentRule |
支持 | 支持 | 支持 | 支持 | 未知 | 支持 | 支持 |
cssFloat |
支持 | 支持 | 未知 | 不支持 | 未知 | 支持 | 未知 |
1. See bug 331608.
2. Only returns a result if called on the result of getComputedStyle()
.