css不求甚解之Position = absolute

浏览:1480 发布日期:2013/07/11 分类:技术分享 关键字: css不求甚解之Position = absolute
css中有绝对定位法,以前一直搞不懂绝对定位是相对于谁而言的绝对定位。

现在搞清楚了,不是相对于父元素,也不是相对于BODY。

而是相对于所属元素树中,相对于position属性非static值的最近父级元素进行偏移(position默认值是static)
代码如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<style>
.head{background:red;width:100%;height:50px;}
.one{background:blue;width:250px;margin-left:200px;height:50px;position:relative}
.inone{position:absolute; top:26px; left:20px; width:160px; padding:3px 0 3px 5px; border:2px solid #1078ad; background:olive;}
</style>
</HEAD>
<BODY>
<div class="head">
<div class="one"><div class="inone">来吧</div></div>
</div>
</BODY>
</HTML>

以下是其他值的注释:
absolute
生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。

元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。

fixed

生成绝对定位的元素,相对于浏览器窗口进行定位。

元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。

relative

生成相对定位的元素,相对于其正常位置进行定位。(相对于自己)

因此,"left:20" 会向元素的 LEFT 位置添加 20 像素。

static默认值。没有定位,元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明)。inherit规定应该从父元素继承 position 属性的值。
了解更多文章请访问:http://www.bestphper.cn
最佳答案
评论( 相关
后面还有条评论,点击查看>>