由于某种原因过滤器:不透明度在 IE8 中不起作用。我有一段时间没有使用它,但它总是有效,我不知道问题是什么。此外,萤火虫根本没有显示过滤规则,只是正常的不透明度。
有任何想法吗?
ul.products-grid img:hover {
opacity: .8;
filter:alpha(opacity=80);
}
由于某种原因过滤器:不透明度在 IE8 中不起作用。我有一段时间没有使用它,但它总是有效,我不知道问题是什么。此外,萤火虫根本没有显示过滤规则,只是正常的不透明度。
有任何想法吗?
ul.products-grid img:hover {
opacity: .8;
filter:alpha(opacity=80);
}
标签是
filter:progid:DXImageTransform.Microsoft.Alpha(opacity=80);
试试这个
在 IE8 中,你可能还需要;
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
尝试这个:
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
,使用如下 if IE 语句将您的标准样式表与您的 IE 样式表分开:
<!--[if IE]>
<link rel="stylesheet" type="text/css" href="stylesheetname.css" />
<![endif]-->
你的 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>
还要检查您的页面是否在 IE 中以 quirks 模式呈现。我认为 IE8 可能不支持任意元素上的 :hover 伪类,除非它处于标准遵从模式。
类似的情况和解释在这里。