4.1.2 带厂商前缀的样式属性

4.1.2 带厂商前缀的样式属性

浏览器厂商在引入试验性的样式属性时,通常会在实现达到CSS规范要求之前,在属性名前面添加一个前缀。等到实现和规范都稳定之后,这些属性的前缀就会被去掉,让开发人员使用标准的名称。
因此,我们经常会在样式表里看到一些类似下面这样的CSS声明:

1
2
3
4
5
-webkit-property-name: value; 
-moz-property-name: value;
-ms-property-name: value;
-o-property-name: value;
property-name: value;

如果想在JavaScript中设置这些属性,需要提前检测它们在DOM中是否存在,从propertNameWebkitPropertyName,再到msPropertyName……都要检测。但jQuery中,我们可以直接使用标准的属性名,比如:.css('propertyName', 'value')。如果样式对象中不存在这个属性,jQuery就会依次检测所有带前缀(WebkitOMozms)的属性,然后使用第一个找到的那个属性。

本文重点

jQuery中,应该直接使用标准的属性名,不要使用带浏览器前缀的属性名.