用来设定元素透明度的 Opacity 是CSS 3里的一个属性。当然现在还只有少部分浏览器支持。
不过各个浏览器都有自己的私有属性来支持,其中包括老版本的Mozilla和Safari:
IE: filter:alpha(opacity)
Mozilla: -moz-opacity
Safari: -khtml-opacity
很不幸的是,你没看见Opera,老版本的Opera并没有什么私有属性可以代替opacity。(新版Opera已经支持opacity)
所以以前用CSS设定一个元素半透明的话,可能会这样写:
1 .opacity{
2 filter:alpha(opacity=50); /* IE */
3 -moz-opacity:0.5; /* 老版Mozilla */
4 -khtml-opacity:0.5; /* 老版Safari */
5 opacity: 0.5; /* 支持opacity的浏览器*/
6 }
2 filter:alpha(opacity=50); /* IE */
3 -moz-opacity:0.5; /* 老版Mozilla */
4 -khtml-opacity:0.5; /* 老版Safari */
5 opacity: 0.5; /* 支持opacity的浏览器*/
6 }
用javascript来设定一个元素为半透明:
1
.object.filter = "alpha(opacity=" + opacity + ")"; /* IE */
2
.object.MozOpacity = (opacity / 100); /* 老版Mozilla */
3
object.KhtmlOpacity = (opacity / 100); /* 老版Safari */
4
object.opacity = (opacity / 100); /* 支持opacity的浏览器*/
5

2

3

4

5

效果如下图: