1、定位:是一种高级的布局手段,
2、通过position属性设置定位
可选值:
static 默认值,没有开启定位
开启定位:
relative 开启相对定位
absolute 开启绝对定位
fixed 开启固定定位
sticky 开启粘滞定位
3、每一种定位,对应的特点
(1)、position: relative; 开启了相对定位
开启后的特点:
a:开启相对定位之后,如果不配合偏移量使用,元素是没有任何变化
b:相对定位的原点,就是元素原来在文档流中的位置
c:开启相对定位后,元素的层级提高了
d:开启相对定位,元素的性质不会发生改变,块还是块,行内还是行内,
也就是说元素没有脱离文档流
偏移量:
left 相对定位位置左侧的偏移量
right 相对定位位置右侧的偏移量
top 相对定位位置上侧的偏移量
bottom 相对定位位置下侧的偏移量
一般情况下,水平方向的偏移量,垂直方向的偏移量,只用一个值确定,不会同时使用两个值,容易出问题
(2)、position: absolute; 开启绝对定位
开启之后特点:
a:开启绝对定位后,元素就会脱离文档流
b:开启绝对定位后,元素的性质就发生了改变,不再区分块,行内块,行内元素
c:开启绝对定位,元素的层级也会提高
d:绝对定位,如果要元素的位置发生改变,依然需要配合偏移量去使用
e:绝对定位的原点:相对于其包含块来定位的
一般情况下,我们给子元素设置绝对定位,同时也会给父元素设置相对定位,
叫“子绝父相”,但具体情况具体看
包含块:
(1)、在没有定位的情况下,包含块就是离当前元素最近的祖先元素
(2)、有定位的情况,包含块是离它最近的,开启了定位的祖先元素;
如果他的祖先元素都没有开启定位,包含块就是根元素(html),又叫初始包含块