【问题标题】:IE8 and below MS filter not same as RGBaIE8 及以下 MS 过滤器与 RGBa 不同
【发布时间】:2013-12-08 07:10:06
【问题描述】:

对于现代浏览器,我使用background: rgba(0, 0, 0, 0.75); 进行完整的视口 div 覆盖。

它不适用于 IE8 及以下版本,所以我搜索了一个解决方案,我在 css3tricks 上找到了这个,但稍微调整了值:

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

它有效,但它不等同于background: rgba(0, 0, 0, 0.75);

有人知道我怎样才能得到同样的结果吗?

【问题讨论】:

    标签: css internet-explorer internet-explorer-8 internet-explorer-7


    【解决方案1】:

    引用自 MSDN http://msdn.microsoft.com/en-us/library/ms532930%28v=vs.85%29.aspx:

    颜色以#AARRGGBB 格式表示,其中AA 是alpha 十六进制值,RR 是红色十六进制值,GG 是绿色十六进制值,BB 是蓝色十六进制值。 alpha 值控制对象的不透明度。 00 的 alpha 值是透明的,而 FF 的值是不透明的。

    这意味着:

    #3f000000 == rgba(0, 0, 0, .25)
    #7e000000 == rgba(0, 0, 0, .50)
    #bd000000 == rgba(0, 0, 0, .75)
    

    所以下面的 CSS 应该在 IE6、IE7 和 IE8 上产生相同的背景:

    background-color: rgba(0, 0, 0, 0.75);
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#bd000000,endColorstr=#bd000000);
    

    您应该将filter 属性放在

    但是,如果需要,我建议使用带有background-imagebackground-repeat: repeat; 的所需颜色的小型半透明 PNG,以获得更好的浏览器支持。

    【讨论】:

    • 我正在使用条件句。 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多