对相对定位,绝对定位一直以来有点小小的偏差,总结一下
相对定位:
相对于元素原来位置进行定位,使用top,left属性之后他在原来位置上进行移动,原来元素的位置还是保留着,其他元素也只能看到他原来的位置。
[img]http://dl.iteye.com/upload/attachment/552283/719a35ae-4486-3f7c-b6d7-cdea2b73b916.jpg[/img]
绝对定位:
如果只设置了元素的position为absolute则元素还是在原来位置上,但宽度和高度变为适应元素内容的宽度高度(元素默认没有设置高度宽度的情况下),一旦设置left或top,绝对定位才会相对于已定位的父级或以上元素的原点进行定位。
[img]http://dl.iteye.com/upload/attachment/552292/7770aef0-f45e-3dce-afa1-06e065daef71.jpg[/img]
设置了left和top之后
[img]http://dl.iteye.com/upload/attachment/552299/8090f0d1-136a-3a95-b4a8-a8bc6123d212.jpg[/img]
相对定位:
相对于元素原来位置进行定位,使用top,left属性之后他在原来位置上进行移动,原来元素的位置还是保留着,其他元素也只能看到他原来的位置。
<div style="padding:20px 20px;border:1px solid red;position:relative;">
<div style="border:1px solid blue;position:relative;top:10px;">ss</div>
<div style="height:50px;border:1px solid gray;">sss</div>
</div>
[img]http://dl.iteye.com/upload/attachment/552283/719a35ae-4486-3f7c-b6d7-cdea2b73b916.jpg[/img]
绝对定位:
如果只设置了元素的position为absolute则元素还是在原来位置上,但宽度和高度变为适应元素内容的宽度高度(元素默认没有设置高度宽度的情况下),一旦设置left或top,绝对定位才会相对于已定位的父级或以上元素的原点进行定位。
<div style="border:1px solid red;margin:20px 20px;padding:20px 20px;">
<div style="height:20px;border:1px solid blue">ss</div>
<div style="height:30px;width:60px;border:1px solid;yellow;position:absolute;">yellow</div>
<div style="border:1px solid green;">ssssssssssssssssssss</div>
</div>
[img]http://dl.iteye.com/upload/attachment/552292/7770aef0-f45e-3dce-afa1-06e065daef71.jpg[/img]
设置了left和top之后
[img]http://dl.iteye.com/upload/attachment/552299/8090f0d1-136a-3a95-b4a8-a8bc6123d212.jpg[/img]