CSSStyleDeclaration
CSSStyleDeclaration 接口是表示具有不同支持集 CSS 样式信息的 CSS 声明块的对象的基类。
CSSStyleProperties— 样式表中声明的 CSS 样式(CSSStyleRule.style)、元素的内联样式,例如HTMLElement、SVGElement和MathMLElement,或者通过Window.getComputedStyle()返回的元素的计算样式。CSSPageDescriptors— CSS at-rules 的样式。
该接口公开了样式信息以及各种与样式相关的方***和属性。例如,它提供了 getPropertyValue() 用于获取破折号命名的 CSS 属性的值,例如 border-top,由于其名称中的连字符,无法直接使用点表示法访问。
注意: 规范的早期版本使用 CSSStyleDeclaration 来表示所有 CSS 声明块,并且某些浏览器和浏览器版本可能仍然这样做(请检查上述 API 的浏览器兼容性表)。通常,相同的网站代码在旧版本和新版本中都将可用,但 CSSStyleDeclaration 中返回的某些属性在特定上下文中可能无关紧要。
属性
CSSStyleDeclaration.cssText-
声明块的文本表示,前提是且仅当它通过
HTMLElement.style公开时。设置此属性会更改内联样式。如果您想要计算出的声明块的文本表示,可以使用JSON.stringify()获取。 CSSStyleDeclaration.length只读-
属性的数量。请参阅下面的
item()方法。 CSSStyleDeclaration.parentRule只读-
包含的
CSSRule。
CSS 属性
CSSStyleDeclaration.cssFloat已弃用-
floatCSS 属性的特殊别名。 CSSStyleDeclaration命名属性-
所有支持的 CSS 属性的破折号和驼峰式命名属性。
实例方法
CSSStyleDeclaration.getPropertyPriority()-
返回可选的优先级,“important”。
CSSStyleDeclaration.getPropertyValue()-
根据属性名返回属性值。
CSSStyleDeclaration.item()-
根据索引返回 CSS 属性名,如果索引超出范围则返回空字符串。
CSSStyleDeclaration.removeProperty()-
从 CSS 声明块中移除属性。
CSSStyleDeclaration.setProperty()-
修改现有 CSS 属性或在声明块中创建新的 CSS 属性。
CSSStyleDeclaration.getPropertyCSSValue()已弃用-
仅通过 Firefox 中的 getComputedStyle 支持。 返回属性值作为
CSSPrimitiveValue,或者对于 简写属性 返回null。
示例
js
const styleObj = document.styleSheets[0].cssRules[0].style;
console.log(styleObj.cssText);
for (let i = styleObj.length; i--; ) {
const nameString = styleObj[i];
styleObj.removeProperty(nameString);
}
console.log(styleObj.cssText);
规范
| 规范 |
|---|
| CSS 对象模型 (CSSOM) # the-cssstyledeclaration-interface |
浏览器兼容性
加载中…