作家
登录

如何解决IE6/7绝对定位元素神秘消失或被遮挡的方法

作者: 来源:www.28hudong.com 2012-11-19 14:17:22 阅读 我要评论

1.当绝对定位层的邻近浮动层的宽度不等于父层宽度时,以及没有清除浮动时,IE6/7,FF中显示一致; 2.当绝对定位层的邻近浮动层的宽度不等于父层宽度时,有清除浮动时,IE6/7不显示绝对定位层,FF显示; 3.当绝对定位层的邻近浮动层的宽度等于父层宽度时,以及没有清除浮动时,IE6不显示绝对定位层,IE7/FF显示; 4.当绝对定位层的邻近浮动层的宽度等于父层宽度时,有清除浮动时,IE6/7不显示绝对定位层,FF显示; 要解决这个BUG的方法也很简单,让绝对定位层不挨着浮动层放置就好了,还有个更简单的方法,在绝对定位元素和其他元素之间加一个空白的div。 再来看看绝对定位元素神秘消失被遮挡的现象,先了解一下所涉及到的几个定位特性:   1. 相对定位元素默认的z-index的数值是0。   2. 当两个相对定位同时出现时,代码靠后的z-index优先。   3. 子级遵循父级设定的z-index;如果子级设定了绝对定位、z-index,可以冲破父级显示 看下面的代码: 复制代码代码如下: <div style=”position:relative; background:#FF0000; width:200px; height:100px;”> <div style=”position:absolute; background:#FFFF00; width:49px; height:50px; left:106px; top:310px; z-index:100“></div> </div> <div style=”position:relative; background:#000000; width:200px; height:100px;”></div> <div style=”position:relative; background:#9900FF; width:200px; height:100px;”></div>   代码解释:上面是三个相邻的相对定位的层,在第一个层里加了个相对其绝对定位的层,按照理论,这个绝对定位的元素是在三个相对定位元素之上的,但是,实际却没有显示。尝试设置z-index值也没有效。   网上解决这个bug的办法一般用hack使B为负值,来降低 B 在IE下级别。但是这种方法在z-index为负值时,产生了新的ie bug按照定位的特性,ie的这个bug是可以回避。   从表面上看下面的层 遮住了上面的绝对定位层,实际上是下面的 层遮住了绝对定位的的父级层,只要将 该父级层的z-index设定大于后面的层即可。

  推荐阅读

  关于网页配色中的叠柔配色法的详解

本文没有咬文嚼字的地方,只是一个配色技巧的分享,十分简单,简单到流泪,但或许对你来说又十分实用,实用到无语。原本就是天然的馈赠,你我只是顺手采撷之......  网页视觉层面主要是由形式(或叫布局)、色彩>>>详细阅读


本文标题:如何解决IE6/7绝对定位元素神秘消失或被遮挡的方法

地址:http://www.17bianji.com/kaifa/yejie/16077.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)