学习HTML+CSS网页布局的时候,单独使用position:relative/absolute定位,网页放大缩小后总会出现布局错乱等问题,于是google一番,找到解决办法。
例如:
<div id="div1">
<div id="div2">
</div>
</div>
代码示例:
#div1{
position: relative;
}
#div2{
position: absolute;
}
- 如果要设置div2的元素为absolute时,可以先把父元素的div1设置为relative相对定位
- 父元素由于被设置了relative,div2绝对定位absolute的相对定位元素,就是父元素的div1,而不是浏览器本身
- 这时,我们可以以div1来做参照点,进行定位调整
原因:
position: absolute是以离他最近的父级元素进行定位,如果父级元素设置了relative/absolute,
那么就会以该父元素进行定位。如果所有的父级元素都没有设置relative/absolute定位,那么,
就会以body定位
总结:
灵活运用relative配合absolute进行布局,页面布局会更加兼容。