CSS定位position的4种属性
position:fixed; 相对于浏览器窗口绝对定位。
_position:absolute; 只有IE6能识别, IE6不支持fixed, 所以针对IE6使用absolute绝对定位, 一般还要配套一个expression脚本来实现
position: fixed用于生成绝对定位的元素,相对于浏览器窗口进行定位。
元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。
position 属性规定元素的定位类型。这个属性定义建立元素布局所用的定位机制。任何元素都可以定位,不过绝对或固定元素会生成一个块级框,而不论该元素本身是什么类型。相对定位元素会相对于它在正常流中的默认位置偏移。
absolute
生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。
元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。
fixed
生成绝对定位的元素,相对于浏览器窗口进行定位。
元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。
relative
生成相对定位的元素,相对于其正常位置进行定位。
因此,"left:20" 会向元素的 LEFT 位置添加 20 像素。
static 默认值。没有定位,元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明)。
inherit 规定应该从父元素继承 position 属性的值。
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; 固定定位
脱离标准文档流
固定定位的用途:页面中的某些小广告,需要固定在页面中的一个位置不变
总结:将来在写页面的时候,用的最多的不是绝对定位也不是相对定位,而是绝对定位与相对定位一起使用
规范:子绝父相(子元素使用绝对定位,父元素使用相对定位)

CSS定位position的4种属性