文档流是指在网页中将窗体自上而下分红一行行, 并在每行中按从左至右的顺序排放元素,即为文档流.(本身的理解是从头至尾按照文档的顺序,该在什么位置就在什么位置,自上而下,自左到右的顺序),这是普通流的说法。spa
而不少时候会出现影响普通流而存在,最典型的就是浮动、定位(相对定位和绝对定位)对象
1.浮动文档
浮动经常使用在块级元素上,普通流里的块级元素会独占一行,而应用了float的元素就脱离了文档流,能够多个一排,其做用与display:inline-block类似。因为脱离文档流的元素是不占据空间的,因此添加了CSS浮动的元素会对其周围的其余元素产生或多或少的影响。it
2.定位io
相对定位:相对定位是一个很是容易掌握的概念。若是对一个元素进行相对定位,它将出如今它所在的位置上。而后,能够经过设置垂直或水平位置,让这个元素“相对于”它的起点进行移动。即相对元素在文档流中的位置进行偏移,保留占位。float
绝对定位,绝对定位使元素的位置与文档流无关,所以不占据空间。这一点与相对定位不一样,相对定位实际上被看做普通流定位模型的一部分,由于元素的位置相对于它在普通流中的位置。而绝对定位彻底脱离文档流,相对于position属性非static值的最近父元素进行偏移。static
固定定位,元素框的表现相似于将 position 设置为 absolute,不过其包含块是视窗自己,用fixed,他是彻底脱离文档流,相对于视区进行偏移。移动
文档流其实就是文档中可显示对象在排列时所占用的位置。di