您的位置:首页 > 其它

IE8兼容rgba

2016-07-20 18:20 274 查看
嗯,关于IE8不兼容rgba()函数的这个问题,

background:rgba(236,236,236,0.8);


这样的一句代码在IE9及以上都是支持的,那么说一下IE8要怎么做?

background:rgba(236,236,236,0.8);
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#C8ececec,endColorstr=#C8ececec);


第二句话的意思就是当上一行的透明度不起作用的时候执行。这句话的意思本来是用来做渐变的。但是这个地方不需要渐变。所以两个颜色都设置成了相同的颜色。

那么这个#C8ececec是怎么来的呢?

1.C8表示的是这个背景的透明度0.8。



如上图去查找即可。

2.#ececec为rgb(236,236,236)的16进制值

ok,加进去这样一条样式就可以了。

但是还有一个问题,当我把这段代码加进去的时候,IE9的透明度又出了问题,当然在这期间,我改动代码IE10 一直是正常的,所以验证了一句话,IE9部分兼容,IE10基本是完全兼容的。

最后解决一下这个问题,

<!--[if IE 8]>     

     .form{

       filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#C8ececec,endColorstr=#C8ececec);

    }

 <![endif]-->

判断一下,如果浏览器为IE8,那就加上这句样式,否则,忽略掉这句就好了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: