2013-02-06 80 views
1

由于某种原因过滤器:不透明度在IE8中不起作用。我有一段时间没有使用它,但它一直工作,我不知道问题是什么。此外,萤火虫并没有显示过滤规则,只是正常的不透明度。过滤器不透明度不起作用

任何想法?

ul.products-grid img:hover { 

    opacity: .8; 
    filter:alpha(opacity=80); 
} 

回答

0

此外,检查您的网页是否在IE中以怪癖模式呈现。我认为IE8可能不支持:任意元素上的hover伪类,除非它处于标准兼容模式。

类似的情况和解释here

1

标签是

filter:progid:DXImageTransform.Microsoft.Alpha(opacity=80); 

尝试了这一点

1

试试这个:

ul.products-grid img:hover { 
    opacity: .8; /* Standards Compliant Browsers */ 
    filter:alpha(opacity=80); /* IE 7 and Earlier */ 
    /* Next 2 lines IE8 */ 
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; 
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80); 
} 

,如果你希望自己的网页validate,从您的IE浏览器的样式表分离的标准样式表通过使用if语句如下所示:

<!--[if IE]> 
<link rel="stylesheet" type="text/css" href="stylesheetname.css" /> 
<![endif]--> 
0

你的CSS工作正常。看看这里的演示,http://jsfiddle.net/e26Pz/2/

也许问题可能在DOC类型。在我使用的示例中<!DOCTYPE html>

Doc您使用的是什么类型?

完整的示例代码

<!DOCTYPE html> 
<html> 
<head> 
    <meta http-equiv="content-type" content="text/html; charset=UTF-8"> 
    <title> - jsFiddle demo</title> 
    <style type='text/css'> 
    img:hover {  
     opacity: 0.4; 
     filter:alpha(opacity=40); 
    } 
    </style> 

</head> 
<body> 
    <img src="https://fbcdn-sphotos-h-a.akamaihd.net/hphotos-ak-prn1/69651_408104205949356_2097957740_n.jpg" />  
</body> 
</html> 
+0

尼斯小提琴,但你测试,在IE8?对我来说,jsfiddle.net似乎不在IE8中工作。 –

+0

我检查了IE8并为我工作。试试这个链接,http://fiddle.jshell.net/e26Pz/2/show/ –

+0

是的,那个在IE8中对我很好。现在我很困惑,因为大多数消息来源似乎都声称IE8需要这样的-ms-过滤规则。 –