网页html 背景颜色 半透明且不影响子元素,兼容IE6-8

项目的需要,需要一个背景半透明的效果,于是马上想到“opacity:0.5″等等,为兼容IE可能还会用到filter,如:]

filter:alpha(opacity=50); -moz-opacity:0.50; opacity:0.50;

上面的是可以达到半透明的效果,但是会影响里面的子元素也半透明,例如DIV里面的文字也半透明了,这不是我想要的

上英文google.com翻阅半天,稍加总结和修改,终于功夫不负有心人,实现了可以兼容各浏览器,达到背景颜色半透明而不影响子元素的代码,如下:

background:rgba(0,0,0,0.6);
background: transparent\9;
zoom:1\8; /* required for the filters */
-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000, endColorstr=#99000000)"; /* IE8 */
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000, endColorstr=#99000000); /* IE5.5-7 */

上面的代码利用了rgba的半透明效果,为了兼容IE使用filter。

注意:这里的方法只是对背景颜色来说的,对于背景图片半透明不适用,背景图片半透明可以采用透明的png图片!