CSS:Opacity-Div不';IE7中没有显示?

CSS:Opacity-Div不';IE7中没有显示?,css,internet-explorer,filter,overlay,opacity,Css,Internet Explorer,Filter,Overlay,Opacity,我创建了一个覆盖,在执行ajax请求时使用它来显示。在firefox中,它工作得很好!但在IE7中,我看不到Div 我的div很简单,它是Body之后的第一个元素 <div id="overlay"> &nbsp; </div> 我想这可能与大小有关,因为我在div中放置了一些文本,在IE7上看不到,但在firefox上看到了 有人知道它在哪里不起作用吗,我有点不知所措:-) 我试着删除display:none和它是一样的,我还插入了height:auto

我创建了一个覆盖,在执行ajax请求时使用它来显示。在firefox中,它工作得很好!但在IE7中,我看不到Div

我的div很简单,它是Body之后的第一个元素

<div id="overlay">
   &nbsp;
</div>
我想这可能与大小有关,因为我在div中放置了一些文本,在IE7上看不到,但在firefox上看到了

有人知道它在哪里不起作用吗,我有点不知所措:-)

我试着删除display:none和它是一样的,我还插入了height:auto,但仍然没有乐趣

我使用jquery来显示和隐藏它,但这并不是问题所在,因为我删除了Display:none,而且我看不到应该位于其余内容顶部的div

 $("#overlay").show();
有什么想法吗


提前感谢

尝试以下附加CSS:

#overlay {
    zoom: 1;
}

尝试以下附加CSS:

#overlay {
    zoom: 1;
}

由于div位于绝对位置,因此应指定高度(不同于自动)。可以这样做:将高度:100%声明为
#overlay
,然后在打开覆盖时声明
html,body{height:100%}
,关闭覆盖时声明
html,body{height:auto}

另一种(更好的)方法是通过javascript(例如document.body.offsetHeight)友好地计算body元素的高度,然后将#overlay指定为高度

document.getElementById('overlay').style.height=document.body.offsetHeight+'px'

这将在jQuery代码段中编写为

$("#overlay").height($('body').height()).show();

由于div位于绝对位置,因此应指定高度(不同于自动)。可以这样做:将高度:100%声明为
#overlay
,然后在打开覆盖时声明
html,body{height:100%}
,关闭覆盖时声明
html,body{height:auto}

另一种(更好的)方法是通过javascript(例如document.body.offsetHeight)友好地计算body元素的高度,然后将#overlay指定为高度

document.getElementById('overlay').style.height=document.body.offsetHeight+'px'

这将在jQuery代码段中编写为

$("#overlay").height($('body').height()).show();

我在ie7中测试,工作原理与ie8一样。我在ie7中测试,工作原理与ie8一样。