Module jdk.xml.dom
Package org.w3c.dom.css

Interface CSSStyleDeclaration


public interface CSSStyleDeclaration
CSSStyleDeclaration接口表示单个CSS声明块。此接口可用于确定块中当前设置的样式属性,或者在块内明确设置样式属性。

虽然实现可能不会识别CSS声明块中的所有CSS属性,但预期通过CSSStyleDeclaration接口提供对样式表中所有指定属性的访问。此外,支持特定级别的CSS的实现应正确处理该级别的CSS简写属性。有关简写属性的进一步讨论,请参见CSS2Properties接口。

此接口还用于提供对元素计算值的只读访问。另请参阅ViewCSS接口。CSS对象模型不提供对CSS级联的指定或实际值的访问。

另请参阅文档对象模型(DOM)级别2样式规范

自版本:
1.4, DOM级别2
  • Method Summary

    Modifier and Type
    Method
    Description
    声明块的可解析文本表示(不包括周围的大括号)。
    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属性。
    void
    setCssText(String cssText)
    声明块的可解析文本表示(不包括周围的大括号)。
    void
    setProperty(String propertyName, String value, String priority)
    用于在此声明块内设置属性值和优先级。
  • Method Details

    • getCssText

      String getCssText()
      声明块的可解析文本表示(不包括周围的大括号)。设置此属性将导致解析新值并重置声明块中的所有属性,包括删除或添加属性。
    • setCssText

      void setCssText(String cssText) throws DOMException
      声明块的可解析文本表示(不包括周围的大括号)。设置此属性将导致解析新值并重置声明块中的所有属性,包括删除或添加属性。
      抛出:
      DOMException - SYNTAX_ERR: 如果指定的CSS字符串值存在语法错误且无法解析,则引发。
      NO_MODIFICATION_ALLOWED_ERR: 如果此声明为只读或属性为只读,则引发。
    • getPropertyValue

      String getPropertyValue(String propertyName)
      用于检索CSS属性的值,如果在此声明块中已明确设置了该属性。
      参数:
      propertyName - CSS属性的名称。请参阅CSS属性索引。
      返回:
      如果已为此声明块明确设置属性,则返回属性的值。如果未设置属性,则返回空字符串。
    • getPropertyCSSValue

      CSSValue getPropertyCSSValue(String propertyName)
      用于检索CSS属性的对象表示形式,如果在此声明块中已明确设置了该属性。如果属性是简写属性,则此方法返回null。简写属性值只能作为字符串访问和修改,使用getPropertyValuesetProperty方法。
      参数:
      propertyName - CSS属性的名称。请参阅CSS属性索引。
      返回:
      如果已为此声明块明确设置属性,则返回属性的值。如果未设置属性,则返回null
    • removeProperty

      String removeProperty(String propertyName) throws DOMException
      用于移除在此声明块中已明确设置的CSS属性。
      参数:
      propertyName - CSS属性的名称。请参阅CSS属性索引。
      返回:
      如果已为此声明块明确设置属性,则返回属性的值。如果未设置属性或属性名称不对应已知的CSS属性,则返回空字符串。
      抛出:
      DOMException - NO_MODIFICATION_ALLOWED_ERR: 如果此声明为只读或属性为只读,则引发。
    • getPropertyPriority

      String getPropertyPriority(String propertyName)
      用于检索CSS属性的优先级(例如"important"修饰符),如果在此声明块中已明确设置了优先级。
      参数:
      propertyName - CSS属性的名称。请参阅CSS属性索引。
      返回:
      如果在此声明块中已明确设置属性并指定了优先级,则返回表示优先级(例如"important")的字符串。否则返回空字符串。
    • setProperty

      void setProperty(String propertyName, String value, String priority) throws DOMException
      用于在此声明块内设置属性值和优先级。 setProperty允许修改声明块中的属性或添加新属性。对此方法的任何调用都可能修改item方法中属性的顺序。
      参数:
      propertyName - CSS属性的名称。请参阅CSS属性索引。
      value - 属性的新值。
      priority - 属性的新优先级(例如"important")或如果没有则为空字符串。
      抛出:
      DOMException - SYNTAX_ERR: 如果指定的值存在语法错误且无法解析,则引发。
      NO_MODIFICATION_ALLOWED_ERR: 如果此声明为只读或属性为只读,则引发。
    • getLength

      int getLength()
      在此声明块中已明确设置的属性数量。有效索引范围为0到长度-1(包括)。
    • item

      String item(int index)
      用于检索在此声明块中已明确设置的属性。使用此方法检索的属性顺序不一定是设置属性的顺序。此方法可用于迭代此声明块中的所有属性。
      参数:
      index - 要检索的属性名称的索引。
      返回:
      此序数位置处的属性名称。如果此位置不存在属性,则返回空字符串。
    • getParentRule

      CSSRule getParentRule()
      包含此声明块的CSS规则,如果此CSSStyleDeclaration未附加到CSSRule,则为null