# 2. BFC

参考答案:

  • 什么是 BFC

    BFC(Block Formatting Context)格式化上下文,是 Web 页面中盒模型布局的 CSS 渲染模式,指一个独立的渲染区域或者说是一个隔离的独立容器。

  • 形成 BFC 的条件

    • 浮动元素,float 除 none 以外的值
    • 定位元素,position(absolute,fixed)
    • display 为以下其中之一的值 inline-block,table-cell,table-caption
    • overflow 除了 visible 以外的值(hidden,auto,scroll)
  • BFC 的特性

    • 内部的 Box 会在垂直方向上一个接一个的放置。
    • 垂直方向上的距离由 margin 决定。
    • bfc 的区域不会与 float 的元素区域重叠。
    • 计算 bfc 的高度时,浮动元素也参与计算。
    • bfc 就是页面上的一个独立容器,容器里面的子元素不会影响外面元素。
  • BFC两个主要特性是:1. 上下外边距重叠;2. 浮动元素参与 BFC 高度计算。

  • BFC 的作用

    • 清除浮动
    • 防止同一 BFC 容器中的相邻元素间的外边距重叠问题