在IE6.0以及其以下的版本中,会出现这样的一个情况:DIV层里面的东西会被SELECT标签的内容给遮挡,导致DIV层里面的控件不能完全展示,造成很大的问题。就其原因:在IE6.0中给控件进行属性定位的时候,SELECT是输入一个Window的IE组件,而DIV是输入一个用户的组件,在优先级上SELECT是要比DIV要高的,所以在页面呈现的时候SELECT会遮住用户组件DIV,针对这个问题,我们有多种解决方案,而其中最好最简单也是最直接的就是使用IFRAME组件。

IFRAME是IE5.5以后提出来的一个WINDOW组件,在IFRAME中只能嵌套页面,所以IFARAME中有SRC属性可以直接引用一个页面。在IE中有一组规范,IFRAME的优先级要比SELECT高,所以在页面显示的时候,如果IFRAME和SELECT在同一个位置的话,我们会发现,IFRAME把SELECT给遮挡了,而DIV中可以加入IFRAME,有了这个基础我们知道了:将我们要显示的DIV层中加入一个空的IFRAME

<iframe style="position:absolute;z-index:-1;width:100%;height:100%;left:0;top:0;" frameborder="0" scrolling="no" src="about:blank"></iframe>

如:以下Html代碼:

Code

想實現的效果:點擊顯示時會將zone這一個select標簽選擇的值給mydiv中的myvalue,同時隱藏的Div顯示出來,點擊

隱藏的時候,則將Div隱藏

但IE6上的效果會發現select沒有被mydiv擋住

我們在mydiv標簽名加入以下IFrame語句:

 

Code

再次查看效果:發現已解決此問題:

參考文章:http://hi.baidu.com/xgj2245/blog/item/aed5f2d1bf7887309b5027f6.html

posted on 2009-11-25 16:46  不高很瘦  阅读(641)  评论(0编辑  收藏  举报