Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是';getPropertyValue';检索CSS所需的方法?_Javascript_Css_Cssom - Fatal编程技术网

Javascript 是';getPropertyValue';检索CSS所需的方法?

Javascript 是';getPropertyValue';检索CSS所需的方法?,javascript,css,cssom,Javascript,Css,Cssom,如果只能使用getComputedStyle方法,您能告诉我为什么需要使用getPropertyValue方法吗 例如,据我所知,这将起作用: var s=getComputedStyle(元素,null); 这相当于以下内容: var s=getComputedStyle(元素,null).getPropertyValue('opacity'); 我们是否可以在不使用getPropertyValue的情况下使用getComputedStyle 我相信它适用于不能用点符号表示的属性,如背景位

如果只能使用
getComputedStyle
方法,您能告诉我为什么需要使用
getPropertyValue
方法吗

例如,据我所知,这将起作用:

var s=getComputedStyle(元素,null);
这相当于以下内容:

var s=getComputedStyle(元素,null).getPropertyValue('opacity');
我们是否可以在不使用
getPropertyValue
的情况下使用
getComputedStyle

我相信它适用于不能用点符号表示的属性,如
背景位置
。尽管我认为这会带来一个问题:“为什么不使用括号表示法,即
getComputedStyle(element,null)['background-position']
?”。他们可能只是想为类使用一个getter方法(CSSStyleDeclaration)。

根据以前的说法,
getPropertyValue
不是必需的:

CSS2Properties
接口为 检索和设置数据库中的属性。 此接口的属性对应于所有。获取此接口的属性是 相当于调用 接口。设置此属性的属性 接口相当于调用 接口

但是,不需要实现来支持它,因此使用
getPropertyValue
更安全

CSS模块的一致性实现不需要 实现
CSS2Properties
接口

但根据较新版本,不使用
getPropertyValue
的camel case必须起作用:

对于作为的每个CSS属性 以下部分接口适用于使用驼峰大小写属性的情况 通过运行 财产

camel cased属性
属性在获取时必须返回 以参数为 运行该算法的结果 骆驼壳属性

设置属性必须调用 第一个参数是 运行 camel cased属性,作为给定值的第二个参数,而不是第三个参数。任何抛出的异常都必须重新抛出


因此,检索CSS值不再需要
getPropertyValue

您不能使用
?哎呀,忘了这一点。我自己不会用它,因为它不可推广。
getComputedStyle
的第二个参数也不再需要了。谢谢你,Oriol,谢谢你详细的回答。你消除了我对这个问题的所有疑虑。你好,菲利普。
partial interface CSSStyleDeclaration {
    attribute DOMString _camel-cased attribute;
};