今天我说说iframe解决的一般方法,已经使用jQuery插件bgiframe解决IE6 select z-index无效,遮挡div的bug。 解决方法之一:Iframe包裹select元素 使用iframe包住select,这样iframe有z-index,只要在div上设置的z-index比iframe的高即可~这种方法有一定的局限性,不可能每个select都要加个iframe吧?所以不推荐!代码如下: 复制代码代码如下: <iframe style="z-index:1" style="z-index:1"><!-- 用iframe 解决此bug --> <select name="country"> <option value="1">china</option> <option value="2">japanese</option> <option value="1">U.S.A</option> </select> </iframe> 解决方法之二:以Iframe作为div的子元素,覆盖select元素 建立一个跟div同宽同高的iframe,并且z-index比div要低。这种方法推荐使用: 复制代码代码如下: <style>.T_iframe { position: absolute;/*绝对定位保证iframe不会占用流布局空间*/ width: 100%; /*100%保证可以覆盖整个div*/ height: 100%; z-index:-1; /*-1保证iframe显示在div下方*/ } .T_div { position: absolute; left:100px; top:50px; width: 300px; height: 200px; background : blue; z-index:100; } </style> <div class="T_div"> <span>这里可以包含其他dom元素</span> <iframe class="T_iframe"></iframe> </div> 解决方法之三:使用jQuery的bgiframe插件 如果你的项目引用了jQuery,那么我推荐使用bgiframe插件来解决select的遮挡div问题,原理很简单,就是建立一个同高同宽的iframe插入到div中去~bgiframe下载地址:http://github.com/brandonaaron/bgiframe,使用方法: $('.fix-z-index').bgiframe(); 参数说明: 复制代码代码如下: top:设置top位置,默认为auto left:设置left位置,默认为auto width:设置iframe宽度,默认为auto height:设置iframe高度,默认为auto opacity:设置是否透明,默认为true src:设置iframe的src,默认为javascript:false
推荐阅读
CSS和“★”字符制做的中国国旗实现代码
在网上看见 某位牛人用CSS做的红旗 就是很牛! 上图先看:
<html>
<head>
<title>CSS中国国旗</title>
<style type="text/css">
.all{
background-color:red;
width:960;
height=640;
}
.five{
backg>>>详细阅读
本文标题:IE6 select z-index无效,遮挡div bug的解决方法
地址:http://www.17bianji.com/kaifa2/CSS/16621.html
1/2 1