JS读写各浏览器私有CSS属性

添加评论 2010年1月8日

CSS3标准近在咫尺,某些新属性已经被广泛应用于网页制作。随着版本的不断升级,各浏览器也越来越接近标准,浏览器全面支持HTML5标准 欲挑战RIA三巨头,而且以前对CSS3标准不屑的IE浏览器也频频向CSS3标准靠拢,最新版的IE8浏览器已经对html5标准有一定的支持,但还是会有部分私有属性存在于现行浏览器中。在此,整理了一份主流浏览器Firefox、Safari、Opera以及IE8对各自私有CSS属性脚本读写支持的列表,记录如下:

Firefox 3.5.7

私有属性前缀:-moz-
举例:-moz-border-radius:10px;

读:window.getComputedStyle(e, null).MozBorderRadius(Topleft|Topright|Bottomleft|Bottomright)
可读简写属性:否

写:e.style.MozBorderRadius
可写简写属性:是

Safari 4.0.4

私有属性前缀:-webkit-
举例:-webkit-box-shadow:0 0 2px #000;

读:window.getComputedStyle(e, null).(Webkit|webkit)BoxShadow
可读简写属性:否

写:e.style.(Webkit|webkit)BoxShadow
可写简写属性:是

Opera 10.50 pre-alpha

私有属性前缀:-o-
举例:-o-transform: rotate(5deg);

读:window.getComputedStyle(e, null).OTransform(无值)[1]
可读简写属性:是

写:e.style.OTransform
可写简写属性:是

Internet Explorer 8

私有属性前缀:-ms-[2]
举例:-ms-filter: “alpha(opacity=50)”;

读:e.currentStyle.filter
可读简写属性:是

写:e.style.filter
可写简写属性:是

[1] Opera 对私有属性的支持视内核版本而定,当前版本获取私有属性都无值或无有效值(如:-o-text-overflow:ellipsis;)
[2] 需在IE8标准模式下才能识别-ms-私有属性

P.S. Opera 控制台打印命令为其专用的 opera.postError() ,其他浏览器中 console.log 皆可使用。

  1. 还没有评论.想坐沙发?
  1. 还没有 trackbacks
订阅评论