css 中不得不提的bfc 独立容器css
在进行盒子元素布局的时候, BFC 提供了一个环境, 在这个环境中按照必定规则进布局
行布局不会影响到其它环境中的布局。好比浮动元素会造成 BFC,浮动元素内部子元素spa
的主要受该浮动元素影响,两个浮动元素之间是互不影响的。it
也就是说,若是一个元素符合了成为 BFC 的条件,该元素内部元素的布局和定位io
就和外部元素互不影响(除非内部的盒子创建了新的 BFC), 是一个隔离了的独立容器。table
在 CSS3 中,BFC 叫作 Flow Root。容器
造成 BFC 的条件(符合如下任一条件便可): bfc
1) float 的值不为 none;scroll
2) overflow 的值不为 visible;float
3) display 的值为 table-cell、table-caption 和 inline-block 之一;
4) position 的值不为 static 或 relative 中的任何一个;
或则是这样:
float:left|right
position:absolute|fixed
display: table-cell|table-caption|inline-block
overflow: hidden|scroll|auto