1.文档流与非文档流
一、首先,按照普通流和非普通流来分类:
-
普通流:就是按照上下左右的顺序一行一行排列的,长度不够就会自动挤到下一行。
-
非普通流:顾名思义就是脱离普通流的,在普通流上面是不占据位置的。
css有position的样式,position包括:static,relative,absolute,fixed四种值。
1)static是属于普通流;
2)relative也是属于特殊的普通流;
3)absolute和fixed以及float就是属于非普通流的,加载的时候,也会顺序加载,但是会脱离普通流的位置。
2.float和绝对定位的区别
CSS中脱离文档流,也就是将元素从普通的布局排版中拿走,其他盒子在定位的时候,会当做脱离文档流的元素不存在而进行定位。
- 使用float脱离文档流时,其他盒子会无视这个元素,但其他盒子内的文本依然会为这个元素让出位置,环绕在周围。
- 而对于使用absolute positioning脱离文档流的元素,其他盒子与其他盒子内的文本都会无视它。