public interface CSSStyleDeclaration
CSSStyleDeclaration接口表示单个CSS声明块。此接口可用于确定块中当前设置的样式属性,或者在块内明确设置样式属性。
虽然实现可能不会识别CSS声明块中的所有CSS属性,但预期通过CSSStyleDeclaration接口提供对样式表中所有指定属性的访问。此外,支持特定级别的CSS的实现应正确处理该级别的CSS简写属性。有关简写属性的进一步讨论,请参见CSS2Properties接口。
此接口还用于提供对元素计算值的只读访问。另请参阅ViewCSS接口。CSS对象模型不提供对CSS级联的指定或实际值的访问。
另请参阅文档对象模型(DOM)级别2样式规范。
- 自版本:
- 1.4, DOM级别2
-
Method Summary
Modifier and TypeMethodDescription声明块的可解析文本表示(不包括周围的大括号)。int在此声明块中明确设置的属性数量。包含此声明块的CSS规则,如果此CSSStyleDeclaration未附加到CSSRule,则为null。getPropertyCSSValue(String propertyName) 用于检索CSS属性的对象表示形式,如果在此声明块中已明确设置了该属性。getPropertyPriority(String propertyName) 用于检索CSS属性的优先级(例如"important"修饰符),如果在此声明块中已明确设置了优先级。getPropertyValue(String propertyName) 用于检索CSS属性的值,如果在此声明块中已明确设置了该属性。item(int index) 用于检索在此声明块中已明确设置的属性。removeProperty(String propertyName) 用于移除在此声明块中已明确设置的CSS属性。voidsetCssText(String cssText) 声明块的可解析文本表示(不包括周围的大括号)。voidsetProperty(String propertyName, String value, String priority) 用于在此声明块内设置属性值和优先级。
-
Method Details
-
getCssText
String getCssText()声明块的可解析文本表示(不包括周围的大括号)。设置此属性将导致解析新值并重置声明块中的所有属性,包括删除或添加属性。 -
setCssText
声明块的可解析文本表示(不包括周围的大括号)。设置此属性将导致解析新值并重置声明块中的所有属性,包括删除或添加属性。- 抛出:
-
DOMException- SYNTAX_ERR: 如果指定的CSS字符串值存在语法错误且无法解析,则引发。
NO_MODIFICATION_ALLOWED_ERR: 如果此声明为只读或属性为只读,则引发。
-
getPropertyValue
用于检索CSS属性的值,如果在此声明块中已明确设置了该属性。- 参数:
-
propertyName- CSS属性的名称。请参阅CSS属性索引。 - 返回:
- 如果已为此声明块明确设置属性,则返回属性的值。如果未设置属性,则返回空字符串。
-
getPropertyCSSValue
用于检索CSS属性的对象表示形式,如果在此声明块中已明确设置了该属性。如果属性是简写属性,则此方法返回null。简写属性值只能作为字符串访问和修改,使用getPropertyValue和setProperty方法。- 参数:
-
propertyName- CSS属性的名称。请参阅CSS属性索引。 - 返回:
-
如果已为此声明块明确设置属性,则返回属性的值。如果未设置属性,则返回
null。
-
removeProperty
用于移除在此声明块中已明确设置的CSS属性。- 参数:
-
propertyName- CSS属性的名称。请参阅CSS属性索引。 - 返回:
- 如果已为此声明块明确设置属性,则返回属性的值。如果未设置属性或属性名称不对应已知的CSS属性,则返回空字符串。
- 抛出:
-
DOMException- NO_MODIFICATION_ALLOWED_ERR: 如果此声明为只读或属性为只读,则引发。
-
getPropertyPriority
用于检索CSS属性的优先级(例如"important"修饰符),如果在此声明块中已明确设置了优先级。- 参数:
-
propertyName- CSS属性的名称。请参阅CSS属性索引。 - 返回:
-
如果在此声明块中已明确设置属性并指定了优先级,则返回表示优先级(例如
"important")的字符串。否则返回空字符串。
-
setProperty
用于在此声明块内设置属性值和优先级。setProperty允许修改声明块中的属性或添加新属性。对此方法的任何调用都可能修改item方法中属性的顺序。- 参数:
-
propertyName- CSS属性的名称。请参阅CSS属性索引。 -
value- 属性的新值。 -
priority- 属性的新优先级(例如"important")或如果没有则为空字符串。 - 抛出:
-
DOMException- SYNTAX_ERR: 如果指定的值存在语法错误且无法解析,则引发。
NO_MODIFICATION_ALLOWED_ERR: 如果此声明为只读或属性为只读,则引发。
-
getLength
int getLength()在此声明块中已明确设置的属性数量。有效索引范围为0到长度-1(包括)。 -
item
用于检索在此声明块中已明确设置的属性。使用此方法检索的属性顺序不一定是设置属性的顺序。此方法可用于迭代此声明块中的所有属性。- 参数:
-
index- 要检索的属性名称的索引。 - 返回:
- 此序数位置处的属性名称。如果此位置不存在属性,则返回空字符串。
-
getParentRule
CSSRule getParentRule()包含此声明块的CSS规则,如果此CSSStyleDeclaration未附加到CSSRule,则为null。
-