CSS BFC即“塊級格式化上下文”,它是一個獨立的渲染區域,可以避免元素之間發生奇怪的變形和重疊現象。
可以通過設置元素的display屬性為inline-block、table-cell、table-caption、flex、grid等來生成BFC,也可以通過設置元素的overflow屬性為auto、scroll、hidden等來生成BFC。
示例代碼: .wrap { overflow: auto; }
生成BFC后,元素內部的所有內容都會被包含在這個獨立的渲染區域中,不會影響父元素或者兄弟元素的渲染,同時也不會被父元素或者兄弟元素的樣式所影響。
BFC主要的作用是:
- 清除浮動:子元素浮動時,父元素高度不會塌陷,而是會包含浮動元素的高度。
- 防止 margin 重疊:當兩個相鄰元素都有 margin 時,它們之間的間距是兩個 margin 的最大值,而不是相加。
- 解決文本環繞問題:當文本流中存在浮動元素時,浮動元素下面的文本會環繞在浮動元素的周圍。
- 創建新的塊級上下文:讓元素在垂直方向上形成獨立的渲染區域,可以避免一些布局問題。
總之,BFC是CSS布局中非常重要的一個概念,理解它的原理和作用可以讓我們更好的掌握CSS的布局機制,從而寫出更加精確、優美的代碼。
上一篇css border突出
下一篇css body寬度過小