我
position 的值 relative 和 absolute 定位原点是?
难度:
相关知识点:
absolute
生成绝对定位的元素,相对于值不为static
的第一个父元素的 padding box 进行定位,也可以理解为离自己这一级元素最近的 一级position
设置为absolute
或者relative
的父元素的 padding box 的左上角为原点的。fixed
(老 IE 不支持) 生成绝对定位的元素,相对于浏览器窗口进行定位。relative
生成相对定位的元素,相对于其元素本身所在正常位置进行定位。static
默认值。没有定位,元素出现在正常的流中(忽略top
,bottom
,left
,right
,z-index
声明)。inherit
规定从父元素继承position
属性的值。
回答:
relative
定位的元素,是相对于元素本身的正常位置来进行定位的。
absolute
定位的元素,是相对于它的第一个 position
值不为 static
的祖先元素的 padding box 来进行定位的。这句话 我们可以这样来理解,我们首先需要找到绝对定位元素的一个 position
的值不为 static
的祖先元素,然后相对于这个祖先元 素的 padding box 来定位,也就是说在计算定位距离的时候,padding
的值也要算进去。