CSS中position 属性值:
absolute
:生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。元素的位置通过 “left”, “top”, “right” 以及 “bottom” 属性进行规定。relative
:生成相对定位的元素,相对于其正常位置进行定位。因此,”left:20” 会向元素的 LEFT 位置添加 20 像素。fixed
:生成绝对定位的元素,相对于浏览器窗口进行定位。static
:默认值。没有定位,元素出现在正常的文档流中(忽略 top, bottom, left, right 或者 z-index 声明)。inherit
:规定应该从父元素继承 position 属性的值。
总结:
- 绝对定位会使元素从文档流中被删除,结果就是该元素原本占据的空间被其它元素所填充(如果不存在一个有着position属性的父对象,那么就会以body为定位对象,按照浏览器的窗口进行定位)。
- 相对定位的元素仍然在文档流中,仍然占据着它本来占据的位置空间——虽然它现在已经不在本来的位置了(相对定位是相对于元素自己本身的位置)。
- 混合相对定位和绝对定位时,如果对一个父元素设置relative,而对它的一个子元素设置absolute,则子元素的绝对定位的参照物为父元素。
- fixed定位的参照物总是当前的文档(fixed总是以body为定位对象的,按照浏览器的窗口进行定位)。