1. positon:static; 静态定位(默认的 )
所有标准文档流中的元素都是静态定位
2. positon:relative; 相对定位
不脱离标准文档流,“老家留坑,形影分离”
特点:如果设置了相对定位并且设置了top、left、right、bottom属性,那么将来盒子会以盒子原来所在的位置进行偏移
相对定位的用途:一般不用于做“压盖效果”,就两个作用:
(1)微调元素
(2)绝对定位的参考,子绝父相
可以用left、right来描述盒子右、左的偏移;可以用top、bottom来描述盒子下、上的偏移
position:relative; top:10px; left:10px; //相对于原来位置向右下移10px
position:relative; top:-10px; left:-10px; //相对于原来位置向左上移10px
3. position:absolute; 绝对定位
脱离标准文档流
特点:(1)如果这个元素没有父元素,那么将来top、left、right、bottom是相对于浏览器窗口来定位的
(2)如果绝对定位的元素有父元素,但父元素没有相对定位,那么这个时候top、left、right、bottom还是相对于浏览窗口来定位的
(3)如果绝对定位的元素有父元素,而且父元素有定位(非static),那么这个绝对定位的元素偏移是以自己的父元素为基础
(4)绝对定位之后的元素在页面上不会占据位置
4. position:fixed; 固定定位
脱离标准文档流
固定定位的用途:页面中的某些小广告,需要固定在页面中的一个位置不变
总结:将来在写页面的时候,用的最多的不是绝对定位也不是相对定位,而是绝对定位与相对定位一起使用
规范:子绝父相(子元素使用绝对定位,父元素使用相对定位)