position

来源:互联网 发布:网络文化建设主要内容 编辑:程序博客网 时间:2024/05/17 02:25
position:absolute这个是绝对定位;是相对于浏览器的定位。比如:position:absolute;left:20px;top:80px; 这个容器始终位于距离浏览器左20px,距离浏览器上80px的这个位置。position:relative是相对定位,是相对于前面的容器定位的。这个时候不能用top left在定位。应该用margin。比如:<div class="1"></div><div class="2"></div>当1固定了位置。1的样式float:left;width:100px; height:800px;2的样式为float:left; position:relative;margin-left:20px;width:50px;2的位置在1的右边,距离120px

、relative与absolute的主要区别:

首先,是上面已经提到过的在正常流中的位置存在与否。

其次,relative定位的层总是相对于其最近的父元素,无论其父元素是何种定位方式。如图3:

relative和absolute定位

图中,红色背景层为relative定位,其直接父元素绿色背景层为默认的static定位。红色背景层的位置为相对绿色背景层top、left个20元素。而如果红色背景层定位为absolute,则情形如图4:

relative和absolute定位

可以看到,红色背景层依然定义top:20px;left:20px;但其相对的元素变为定位方式为absolute或relative的黄色背景层。因此,对于absolute定位的层总是相对于其最近的定义为absolute或relative的父层,而这个父层并不一定是其直接父层。如果其父层中都未定义absolute或relative,则其将相对body进行定位,如图5:

relative和absolute定位

除top、left、right、bottom定位外,margin属性值的定义也符合上述规则。

0 0
原创粉丝点击