在IE6下,网页中的层是无法挡住select控件的。无论这个层的z-index有多大。出现这种问题的典型案例就是在网页中使用层来作为对话框而不是简单的alert。当使用层来作为对话框时,通常代码像这样:
id=dBG的是一个背景层,其中的width和height的值最好是用文档的innerWidth和innerHeight值来代替。
在IE6下,如果这个层下面有select控件,是无法挡住这个select的。解决的办法是添加一个iframe,因为iframe可以挡住select及其它控件。这个iframe看起来像这样:
iframe中的left和top要和显示内容的id=content的层的left和top相同,因为只要挡住这些内容就够了。另外注意z-index,刚好在背景层的上面,内容层的下面,正好起到挡住其它控件的作用。
- <div>
- <div style="position:absolute;z-index:101;left:200px;top:200px;">
- <div id="title">title</div>
- <div id="content">content</div>
- </div>
- <div id="dBG" style="position:absolute;z-index:100;left:0px;top:0px;width:100%;height:100%"></div>
- </div>
在IE6下,如果这个层下面有select控件,是无法挡住这个select的。解决的办法是添加一个iframe,因为iframe可以挡住select及其它控件。这个iframe看起来像这样:
- <div>
- <div id="content" style="position:absolute;z-index:102;left:200px;top:200px;">
- <div id="title">title</div>
- <div id="msg">content</div>
- </div>
- <div id="dBG" style="position:absolute;z-index:100;left:0px;top:0px;width:100%;height:100%"></div>
- <iframe frameborder="0" scrolling="no" style="position: absolute; z-index: 101; display: block; top: 200px;left:200px;height:144px;width:400px;" vspace="0" hspace="0" marginwidth="0" marginheight="0"/>
- </div>