[TOC]
# BFC 是什么?
BFC(Block Format Context)塊格式化上下文,即一個設置了 float 或者絕對 / 固定定位(fixed/absolute)的 inline-block 元素,table-cell 元素以及設置了 overflow 屬性的 block 元素就會新建一個塊級格式化上下文區域。在一個 BFC 中,元素和元素之間從上到下排列,他們的外邊距會進行合并。
## 關于如何生成 BFC
1. float 為 left,right。
2. overflow 為 hidden,auto,scroll。
3. display 為 table-cell,table-caption,inline-block。
4. position 為 absolute,fixed。
總結一下就是,設置了上述屬性(浮動,絕對定位,overflow 等)的元素,他們會另外新建一個 BFC,導致他們不會遵守當前所在的 BFC 的規矩,比如外邊距合并等。
# BFC 有什么作用?
> https://www.jianshu.com/p/c9b80c197c21
- 必備基礎
- 基礎知識
- BFC
- 層疊上下文 Stacking Context
- 視覺格式化模型 Visual formatting model
- CSS3中使用HSL顏色指南
- z-index
- line-height
- vertical-align 屬性
- 垂直居中
- overflow
- CSS3 Gradients
- CSS3 動畫基礎
- 難點知識
- 布局篇
- Flex布局
- =====
- Grid布局
- 多列布局
- 高級布局
- 預編譯器篇
- PostCSS
- Sass
- stylus
- 模塊篇
- 良好的使用
- CSS 模塊化
- 技巧篇
- 未來的CSS
- 動畫篇
- 工具篇
- CSS架構
- CSS 命名方法論
- BEM
- CSS解釋器
- 常用框架
- 參考
- 唰唰聲