我为叠加层设置了不透明度,这在FF,Chrome,Safari和IE9中运行良好,但在IE8中却没有。我用Google搜索了很多,但没有找到任何解决方案。
我的css代码是
#overlayEffectDiv {
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
width: 100%;
height: 100%;
filter: alpha(opacity = 50);
-moz-opacity: 0.5;
-khtml-opacity: 0.5;
opacity: 0.50;
background: #000;
position: absolute;
top: 0;
left: 0;
z-index: 3000;
/* hide it by default */
display: none;
}
在FF中,它看起来如下:
但在IE8中,它看起来如下:
答案 0 :(得分:2)
找到解决方案here。不透明度不是我做了一些调试的问题,发现它对ie8工作正常问题是jquery fadeIn和fadeOut。 jQuery fadeIn让半透明的背景变得坚固。
感谢所有帮助过的人。
答案 1 :(得分:0)
我认为过滤器的语法不正确:
http://blogs.msdn.com/b/ie/archive/2009/02/19/the-css-corner-using-filters-in-ie8.aspx
这可能不是导致问题的原因,但可能值得将其排除在外。
答案 2 :(得分:0)
您可能也定义了zoom
。写得像这样:
#overlayEffectDiv {
width: 100%;
height: 100%;
filter: alpha(opacity = 50);
opacity: 0.50;
*zoom:1;
background: #000;
position: absolute;
top: 0;
left: 0;
z-index: 3000;
display: none;
}
答案 3 :(得分:0)
如果涉及图层的某些动画效果出现问题,则可以避免在IE中使用filter
,而是将其用作重复背景的小(不太小,如2x2,使用例如100x100)透明png
文件,背景为黑色,不透明度为~80%