div浮动层在IE6下面被图片,select等等属性遮挡的处理办法

http://blog.m1905.com/viewspace-849465-do-blog-id-37324.html

2009-02-03 00:30

今天做一个医药招商的遇到这样一个问题,在IE6下,当鼠标放到隐藏浮动层下面有图片的位置时,这个层就消失了,在ie7、ie8还有FF里面都正常,找了好久才找到解决办法。

解决办法就是在浮动层的下面,加个透明的IFRAME,代码如下:

引用

<div style="position:absolute; display:none; z-index:99999" id="d3" Onmouseover="show()" Onmouseout="hidden();">

        <iframe style="width:100%;filter:alpha(opacity=0);-moz-opacity:0; height:185px; position:absolute; z-index:-1"></iframe>  

          <ul class="fabu">

                <li><a href="user_index.asp" target="_blank">发布产品招商</a></li>

                <li><a href="dls_add.asp" target="_blank">发布代理信息</a></li>

                <li><a href="gys_add.asp" target="_blank">发布供应信息</a></li>

                <li><a href="qgs_add.asp" target="_blank">发布求购信息</a></li>

                <li><a href="yzh_add.asp" target="_blank">发布展会信息</a></li>

                <li><a href="user_index.asp" target="_blank">发布营销稿件</a></li>

            </ul>

        </div>

把iframe加下面,没有效果,理解后才明白是利用div遮挡住iframe,然后用iframe遮挡住select,然后因为没有iframe没设position值,其实iframe是延续ul下面继续,没有遮挡到select,最后把iframe放到上面,定义一个ul能用到的高度,在加个z-index将iframe置于div的下层。就这样把问题全搞定了。OK,吃饭去!

刚开始照搬网上说的,一直起不到作用,研究发现主要是iframe根本就没有代替div里面的东西,所以主要是要让iframe代替div容器的宽和高,然后再让div里面内容置于iframe前端,