定位属性在元素中的层级关系
时间:2009年12月21日作者:愚人码头查看次数:4,553 views评论次数:5
在现在项目产品的前端开发中随着交互的增多,再加上html结构的语义化要求,元素的层级关系越发重要了,经常页面会出现页面某些元素会被其他元素遮盖,很多时候我们通过position:relative或position:absolute,及z-index值来改变元素的层级,但是z-index过多或其值如果没有充分考虑的话,元素的层级关系会非常复杂。我这里只总结了position:relative和position:absolute在兄弟元素中的一些层级关系,有遗漏或者不足的地方,欢迎大家留言补充和斧正。
注意:这里把position : static这个默认的定位属性值同意认为没有定位,position:relative、position:absolute和position:fixed都认为是有定位 。position:fixed在ie6下未支持,所以本位不做实例,在其他浏览器下同样适用。
一、在没有定位属性的兄弟元素中,一般在html结构下面的元素层级高于结构上面的元素。
可能表达不清楚,看一段代码吧:
<div style="width:400px; height:200px; background:#000; color:#FFF">结构上面的元素:width:400px; height:200px;<br /> 这里黑色的可见高度是150px,还有50px被红色的元素遮罩了(margin-top:-50px)。</div> <div style="width:500px; height:100px;background:red; margin-top:-50px;color:#FFF">结构下面的元素:width:500px; height:100px;</div>
如图显示:
=====================分割线===========================
在了看一个类似的例子:
<div style="width:400px; height:200px; background:#000; color:#FFF;margin-bottom:-110px;">结构上面的元素:width:400px; height:200px;<br /> 这里黑色的可见高度加起来是100px,还有100px被红色的元素遮罩了。</div> <div style="width:500px; height:100px;background:red;color:#FFF">结构下面的元素:width:500px; height:100px;</div>
如图显示:
这两个例子充分说明了一般情况下:没有定位的兄弟元素中,在html结构下面的元素层级高于结构上面的元素。
二,兄弟元素中有定位属性的元素层级高于没有这两个属性的其他兄弟元素。
看一个在结构上面元素上加position:absolute例子,这个可能大家很常用: 继续阅读:定位属性在元素中的层级关系»




最新评论
非常好
Post:2012-02-08 21:59:12@linda, 没见过世面吧你,老板才8 »
Post:2012-02-07 18:11:22码头哥,换个链接,http://www.ijo »
Post:2012-02-07 17:18:45currying: 科里化
Post:2012-02-06 15:51:18貌似在线api已经下不了了
Post:2012-02-06 11:25:19图片被防盗链了,哈哈~
Post:2012-02-06 10:29:45对你造成的不便非常抱歉,简易你卸 »
Post:2012-02-05 14:45:16您好,请问air版本的自动更新怎么去 »
Post:2012-02-05 12:06:24