之前对于文档流的概念没怎么理解,现在稍微总结一下

文档流(Normal Flow)

  • 文档流中:内联元素默认从左到右流,遇到阻碍或者宽度不够自动换行,继续按照从左到右的方式布局。块级元素独占一行,并且按照从上到下的方式布局。

脱离文档流

  • 将元素从普通文档流中去掉,其他元素在排版的时候会当作这个元素不存在去排版。
  • 文档一旦脱离文档流,在计算父元素的高度时,就不包括其自身了。
  • 哪些因素会导致元素脱离文档流
  1. float脱离文档流,但其他的元素文字会找到该元素的文字位置。
  2. position:absolute脱离文档流,其他元素完全无视该元素。它的定位取决于它的父元素有没有定位(position),如果有,那么它就根据定位了的父元素来定位。
  3. position:fixed固定定位,相对于可视区定位,脱离文档流。

小结

使得元素脱离文档流而存在,分别是浮动,绝对定位,固定定位。
下面再来探讨一下几种定位方式:

  1. 相对定位:相对于元素在文档流中的位置进行偏移,但保留原占位(没有脱离文档流)。
  2. 绝对定位:完全脱离文档流,相对于position属性非static值的最近父级元素进行偏移。
  3. 固定定位:完全脱离文档流,相对于视区进行偏移。

猜你喜欢

转载自blog.csdn.net/wennianzhu/article/details/107409583