CSS中的BFC(Block Formatting Context)指的是塊級格式化上下文。它是一個渲染容器,它的內部具有普通流(Normal Flow)的渲染規則,外部的元素不會在其內部產生影響。在BFC中,盒子是垂直放置的,并且盒子與盒子之間存在margin合并。
/* 創建BFC */ div { overflow: hidden; /* 觸發BFC */ }
在創建BFC時,可以通過設置元素的overflow為hidden、auto、scroll等值來觸發BFC。
/* 防止margin合并 */ div { padding: 1px; margin: 10px; /* 觸發BFC */ overflow: hidden; }
在BFC中,相鄰兩個塊級盒子的margin會垂直方向上合并,這時可以通過創建BFC來避免這種情況的發生。
/* 實現兩欄布局 */.container { overflow: hidden; /* 使浮動元素脫離文檔流 */ zoom: 1; } .left { width: 200px; float: left; } .right { /* 觸發BFC */ overflow: hidden; }
BFC還可以用來實現兩欄布局,其中一個浮動,一個觸發BFC。
上一篇css body 頂部
下一篇css border效果