CSS 透明度属性

网站建设 2023-01-28 21:37www.1681989.com免费网站

Firefox3.5已不支持私有属性-moz-opacity了,在Mozilla 1.7 (Firefox 0.9)之前FF都是使用这个私有属性的,Firefox 0.9-Firefox3支持-moz-opacity和opacity这两个属性,Firefox升级到3.5之后,一些网站原来有的透明没有了,呵呵。

除了IE之外,目前主流浏览器, Opera 9.0及更高版本,Safari  1.2(WebKit 125) 及更高版本,chrome等等都支持opacity这个设置透明度的属性,opacity的属性值是0<number<1的数值,默认值是1。

例如50%透明的类.example { opacity: 0.5;}

IE的透明度的属性从IE4-IE8使用filter: alpha(opacity=number),这里的number是0-100之间的整数数值,IE8中我们也可以用-ms-filter: "alpha(opacity=number)"。IE中还支持progid:DXImageTransform.Microsoft.Alpha(Opacity=xx)这种写法,不建议使用。

所以我们可以这样写透明度类

.example { / make the box translucent (80% opaque) /
   opacity: 0.8;                    / Firefox, Safari(WebKit), Opera /
   -ms-filter: "alpha(opacity=80)"; / IE 8 /
   filter: alpha(opacity=80);       / IE 4-7 /
   zoom: 1;/ set "zoom", "width" or "height" to trigger "hasLayout" IE 7 and lower /
}

这些可以参照

我们还会用js来设置元素的透明度,例如

var el=document.getElementById("mybox");
el.style.opacity=50/100; //这里写出50/100主要是为了和ie的写法统一,便于一参数形式传入
el.style.filter='Alpha(Opacity=50)';

这里要说的是,Firefox3.5在css上已不支持私有属性-moz-opacity了,js中的el.style.MozOpacity=val/100;还是被Firefox3.5支持的,我不建议使用,因为这是ff的私有的,其他浏览器不支持。

Copyright © 2016-2025 www.1681989.com 推火网 版权所有 Power by