前端成长路

我对BFC的理解

2016-03-03  本文已影响11990人  wmsj100

BFC的生成

BFC的约束规则

浏览器对于BFC这块区域的约束规则如下:

有朋友对它做了分解,我们直接拿来:

  1. 内部的BOX会在垂直方向上一个接一个的放置;
  2. 垂直方向上的距离有margin决定。(完整的说法是:属于同一个BFC的俩个相邻的BOX的margin会发生重叠,与方向无关。)
  3. 每个元素的左外边距与包含块的左边界相接触(从左到右),即使浮动元素也是如此。(这说明BFC中的子元素不会超出它的包含块,而position为absolute的元素可以超出它的包含块边界);
  4. BFC的区域不会与float的元素区域重叠;
  5. 计算BFC的高度时,浮动子元素也参与计算;
  6. BFC就是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素,反之亦然;

看到以上的几条约束,让我想起了学习CSS时的几条规则:

BFC在布局中的应用

上面说了那么多,那么BFC究竟有什么用,毕竟再好的东西也要为我所用才行。

防止margin重叠:

浮动相关问题;

多栏布局的一种方式

总结

此处要说明的是,这篇文章是我几乎一字不落的抄下来的,因为我对于BFC一窍不通,我认为这样抄录一遍对于我理解BFC会有帮助的,但是看到作者说不建议新手涉猎BFC,我就释然了。
参考文献——我的小树林

上一篇下一篇

猜你喜欢

热点阅读