- relative:相对自身之前正常文档流中的位置发生偏移,未脱离文档流, 且原来的位置仍然被占据。发生偏移时,可能覆盖其他元素, 但不会影响其他元素的位置和大小。body默认是relative,子绝父相。
- absolute:元素框不再占有文档位置,脱离文档流, 并且相对于包含块进行偏移(所谓包含块就是最近一级外层元素position不为static的元素)。
- 给元素设置position:absolute, 在没有定义宽度的情况下,宽度由元素里面的内容决定。
- 在父元素没有设置相对定位或绝对定位的情况下,元素相对于根元素定位(即html元素)(是父元素没有)。
- 父元素设置了相对定位或绝对定位,元素会相对于离自己最近的设置了相对或绝对定位的父元素进行定位(或者说离自己最近的不是static的父元素进行定位,因为元素默认是static)。
- fixd:元素框不再占有文档流位置,并且相对于视窗进行定位。
- static:默认值,取消继承。
- sticky:css3新增属性值,粘性定位,相当于relative和fixed的混合。最初会被当作是relative,相对原来位置进行偏移;一旦超过一定的阈值,会被当成fixed定位,相对于视口定位。
- inherit
绝对定位:absolute 和 fixed 统称为绝对定位
相对定位:relative
默认值:static