指定了javascript HTMLElement.style.property = value语法在哪里?

时间:2014-02-06 22:58:14

标签: javascript css properties styles

我在查找语法规范时遇到了一些麻烦

HTMLElement.style.property=”value” // set the property value

我看到这种语法经常被使用(并且已经成功地使用了它)但是找不到允许这种语法的规范。

使用此语法的示例位于:http://www.w3schools.com/jsref/dom_obj_style.asphttps://developer.mozilla.org/en-US/docs/Web/API/HTMLElement.style,但我似乎无法在CSSOM规范中找到语法:http://dev.w3.org/csswg/cssom/

CSSOM指定

的HTMLElement接口
HTMLElement implements ElementCSSInlineStyle;

其中ElementCSSInlineStyle

 [NoInterfaceObject]
 interface ElementCSSInlineStyle {
     [SameObject, PutForwards=cssText] readonly attribute CSSStyleDeclaration style;
 };

以及CSSStyleDaeclaration

的位置
 interface CSSStyleDeclaration {
     attribute DOMString cssText;
     readonly attribute unsigned long length;
     getter DOMString item(unsigned long index);
     DOMString getPropertyValue(DOMString property);
     DOMString getPropertyPriority(DOMString property);
     void setProperty(DOMString property, [TreatNullAs=EmptyString] DOMString value, [TreatNullAs=EmptyString] optional DOMString priority = "");
     void setPropertyValue(DOMString property, [TreatNullAs=EmptyString] DOMString value);
     void setPropertyPriority(DOMString property, [TreatNullAs=EmptyString] DOMString priority);
     DOMString removeProperty(DOMString property);
     readonly attribute CSSRule? parentRule;
     attribute DOMString cssFloat;
 };

也许我错过了一些基本的东西,但如果规范允许使用相关语法,它就不会向我看。如果有人引用了允许直接设置样式属性的语法,我很乐意接收它。

1 个答案:

答案 0 :(得分:2)

确实在CSSStyleDeclaration的CSSOM规范中,在cssFloat attribute下面

  

对于supported CSS property的每个CSS属性属性,   以下部分接口适用于camel-cased属性   通过运行CSS property to IDL attribute获得   属性算法。

partial interface CSSStyleDeclaration {
           attribute DOMString _camel-cased attribute;
};
     

获取时的camel-cased attribute属性必须返回   调用的结果   getPropertyValue()   该参数是运行IDL attribute to CSS property的结果   骆驼属性算法。

     

必须调用camel-cased attribute属性的设置   setProperty()   第一个参数是运行IDL attribute to CSS property的结果   camel-cased属性的算法,作为给定的第二个参数   价值,没有第三个论点。抛出的任何异常都必须重新抛出。

这样,他们就可以将每个受支持的属性声明为自己的IDL属性。