+ -
当前位置:首页 → 问答吧 → css 滤镜在ie8下无效

css 滤镜在ie8下无效

时间:2011-07-26

来源:互联网

css 代码如下
CSS code
ul.menu-items {
    list-style: none;
    padding: 11px 5px 10px 0px;
    color: #FFF;
    font-weight:bold;
    font-size: 1em;
    margin: 0;
    width: 800px;
}
ul.menu-items li {
    display: inline;
}
ul.menu-items a {
    float: none;
    padding: 0px;
    color: #FFF;
    text-decoration: none;
    padding: 11px 21.2px 10px 30px;
    position:relative;
}
ul.menu-items a:link {
    color:#FFF;
    background-color:rgba(0, 0, 0, 0.5);
    background:#000\9;
    filter:alpha(opacity=50);
}
ul.menu-items a:hover {
    color:#000;
    background-color:rgba(255, 255, 255, 0.5);
    background-color:#fff\9;
    filter:alpha(opacity=50);
}
ul.menu-items a.selected {
    color:#FFF;
    background-color:rgba(255, 255, 255, 0.5);
    background-color:#fff\9;
    filter:alpha(opacity=50);    
}
ul.menu-items a:focus {
    color:#000;
    background-color:rgba(255, 255, 255, 0.5);
    background-color:#fff\9;
    filter:alpha(opacity=50);
}


在ff和chrome下没问题, 但是ie下完全没有透明效果, 是纯黑和纯白.

奇怪的是, 同一个页面放了另一个div

CSS code
#promo {
    float: left;
    width: 725px;
    height: 320px;
    padding: 0;
    margin: 20px 0px 0 0;
    display: inline;
    background-color:rgba(255, 255, 255, 0.5);
    background-color:#fff\9;
    filter:alpha(opacity=50);
}


透明效果在ie8下就正常.
求解

作者: simon1030   发布时间: 2011-07-26

背景、图片类

1. background 显示问题
全部注意补齐 width,height 属性

2. 背景透明问题
IE: filter: progid: DXImageTransform.Microsoft.Alpha(style=0,opacity=60);
IE: filter: alpha(opacity=10);
FF: opacity:0.6;
FF: -moz-opacity:0.10;
最好两个都写,并将opacity属性放在下面

作者: xuexiaodong2009   发布时间: 2011-07-26

楼上正解

作者: jywcyx   发布时间: 2011-07-26

ul.menu-items a 触发hasLayout

作者: ddcatlee   发布时间: 2011-07-26