css中的BFC布局总结

什么是BFC

BFC意为Block Formatting Context,是一个独立的盒子,对外界不会有影响,当然外界也不会对盒子内部产生影响。

BFC能够解决的问题
  1. 解决margin穿透的问题
  2. 解决margin重叠问题
  3. 解决div塌陷问题(float父元素高度撑不开的问题)
形成BFC的条件
  1. 浮动元素,float 除 none 以外的值;
  2. 定位元素,position为(absolutefixed);
  3. display 为以下其中之一的值 inline-blocktable-celltable-caption
  4. overflow 除了 visible 以外的值(hidden, auto, scroll
BFC的布局规则特性
  1. 内部的Box会在垂直方向上一个接一个的放置。
  2. 垂直方向上的距离由margin决定
  3. bfc的区域不会与float的元素区域重叠。
  4. 计算bfc的高度时,浮动元素也参与计算
  5. bfc就是页面上的一个独立容器,容器里面的子元素不会影响外面元素。
  6. 每个元素的左外边距与包含块的左边界/上边界相接触(从左往右,否则相反),即使存在浮动也是如此,BFC中的子元素不会超出它的包含块

你可能感兴趣的:(css中的BFC布局总结)