JQuery IE <div>不透明度问题</div>

时间:2009-05-28 16:22:01

标签: javascript jquery html internet-explorer

我的IE有问题。 我有一个具有这种风格的图层,使其透明和全屏。

position:absolute;
top: 0px;
left: 0px;
right: 0px;
bottom: 0px;
background-color: #000000;
filter:alpha(opacity=50); 
-moz-opacity: 0.5; 
opacity: 0.5;
z-index: 1;

我使用JQuery方法fadeIn和fadeOut来显示和隐藏它。 好吧,在Opera锁定很好,但IE7只是覆盖了风格,并将其设置为100%不透明度。它甚至褪色!!

3 个答案:

答案 0 :(得分:6)

Peter-Paul Koch有一个fantastic article on opacity。一般来说,quirksmode.org是我解决浏览器兼容性问题的第一个地方; PPK做了大量的研究。也就是说,你看起来你已经拥有了所有合适的样式 - 即使你给它一个目标不透明度,jquery的fadein实现也没有做正确的事情吗?

您可以通过将声明的CSS设置为完全不透明但可见:false来解决问题,然后使用fadeto来达到目标​​不透明度吗?

答案 1 :(得分:2)

请使用:

.abc{
opacity: 0.5;
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; // first! for ie8
 filter: alpha(opacity=50);     // second! for other ie versions
}

答案 2 :(得分:0)

当我需要做IE特定的事情时,我通常会选择IE6和7中内置的过滤器。但要注意只将它提供给IE。应用一点肘部油脂,你也可以使用jQuery制作自定义动画。

*object*.style.filter='progid:DXImageTransform.Microsoft.Alpha(style=*value*,opacity=*value*)';

MSDN: Opacity attribute