你的位置:首页 > 网页设计

[网页设计]IE6浏览器下div无法遮盖select下拉框解决方法


IE6浏览器下div无法遮盖select下拉框解决方法:
在IE6浏览器下,select下拉框无法被div遮盖,其他的主流浏览器都是正常的。这里简单介绍一下如何解决此问题。
默认状态下IE6的表现:

<!DOCTYPE html><html><head><meta charset=" utf-8"><meta name="author" content="http://www.51texiao.cn/" /><title>IE6下无法覆盖select-蚂蚁部落</title><style type="text/css">.mydiv{ width:300px; height:300px; position:absolute; background-color:green; left:50px;}</style></head><body><div class="mydiv"></div><div><select name="myselect"> <option value="1">div+css专区</option> <option value="2">jQuery专区</option></select></div></body></html>

以上代码在IE6浏览器下就会显现出此问题,在其他主流浏览器中是正确显示。
解决方案:

<!DOCTYPE html><html><head><meta charset=" utf-8"><meta name="author" content="http://www.51texiao.cn/" /><title>IE6下无法覆盖select-蚂蚁部落</title><style type="text/css">.mydiv{ width:300px; height:300px; position:absolute; background-color:green; left:50px; z-index:6;}.myframe{ width:300px; height:300px; border:none; position:absolute; left:50px; z-index:5; filter:alpha(opacity=0);}</style></head><body><div class="mydiv"></div><select name="myselect" style="position:absolute;z-index:4"> <option value="1">div+css专区</option> <option value="2">jQuery专区</option></select><!--[if lte IE 6]><iframe ></iframe><![endif]--></body></html>

解决方案分析:
虽然div无法覆盖select下拉框,但是iframe能够覆盖select下拉框,而div又可以覆盖iframe,通过三个元素的一些列覆盖关系来实现想要的效果。实现步骤如下:
一.创建一个与div同等尺寸的iframe元素用来覆盖select下拉框。并且通过判断当前浏览器是否为IE6来决定iframe是否生效。
二.让div、select和iframe元素都使用绝对定位,这样他们三个就脱离文档流,可以相互覆盖了。
三.通过使用z-index属性确定三个元素的覆盖关系。

原文地址是:http://www.51texiao.cn/div_cssjiaocheng/2015/0429/417.html