對BFC規范的理解


什么是BFC?

BFC 全稱為 塊級格式化上下文(Block Fromatting Context),是Web頁面的可視化CSS渲染出的一部分。它是塊級盒布局出現的區域,也是浮動層元素進行交互的區域。簡單的來說,它就是一種會影響元素與元素之間的位置、間距的屬性。

 

BFC 的特性

1.內部的box會在垂直方向,從頂部一個接一個的放置

2.box垂直方向的距離由margin決定,屬於同一個BFC的兩個相鄰box的margin會發生疊加

3.每個元素的margin box的左邊,與包含塊border box的左邊相接觸

4.BFC的區域不會與float box疊加

5.BFC就是頁面上的一個隔離的獨立容器,容器里面的子元素不會影響到外面的元素,反之亦然

6.計算BFC的高度時,浮動元素也會參與計算

 

形成BFC的條件

1.float:給元素添加浮動(left,right)

2.position:給元添加定位(absolute,fixed)

3.display:給元素添加display(inline-block,table-cells,table-captions)

4.overflow:給元素添加overflow(hidden,auto,scroll)

 

BFC形成后出現的常見問題

1.margin重疊問題

2.浮動相關問題

 

BFC可以解決的問題

1.margin疊加的問題,要阻止margin重疊,只要將兩個元素別放在一個BFC中即可

2.對於左右布局的元素,我們可以給右側的元素添加overflow :hidden或auto,左側的是float:left

3.可以清除浮動,計算BFC高度,浮動元素不會撐開父元素的高度,我們可以讓父元素觸發BFC,即:使用overflow:hidden;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM