今天分析下css中的各种定位
position用于定义定位,他的值分别为static,relative,fixed,absolute,sticky,最常用的也就是absolute和relative,一般都是子绝父相
1、static 默认值
设置 position: static; 的元素不会以任何特殊方式定位;它是始终根据页面的正常流进行定位:同时静态定位的元素不受 top、bottom、left 和 right 属性的影响。
2、relative 相对定位
参考自己本身的位置,不会脱离文档流,文字不能被遮挡
3、fixed 固定定位
参考浏览器的窗口,不会跟随滚动条的滚动而滚动,脱离文档流,宽度自适应的时候,宽度不显示,可以通过设置 width:100%
4、absolute 绝对定位
参考有定位属性(除了 static)的祖先元素,定位元素通过一层一层向上找,找到有定位的祖先元
素,如果找到 body 依然没有找到有定位的祖先元素,参考浏览器窗口(子绝父相),脱离文档
流,且文字能被遮挡,块级元素设置margin:0 auto;会失效,内联元素设置定位转换成块元素
5、sticky 粘性定位
参考浏览器的窗口,没有达到 top 值之前正常显示,达到 top 值之后类似于固定定位,不会跟
随滚动条滚动而滚动