欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
BFC是個(gè)啥?

BFC的定義

BFC到底是個(gè)啥呢?先貼出一段大佬們在分析BFC的時(shí)候字面上的理解:

在CSS布局中,是通過(guò)對一個(gè)個(gè)box的布局,來(lái)實(shí)現整體頁(yè)面的布局,這一個(gè)個(gè)box也就是一個(gè)個(gè)容器元素,這些元素分為兩類(lèi):塊級元素(block),行內元素(inline)。 對于不同類(lèi)型的元素,有不同的處理規則,這個(gè)元素內部的子元素也會(huì )用不同方式去渲染

BFC中的FC為formatting context的首字母縮寫(xiě),翻譯過(guò)來(lái)就是“格式化上下文”,它是頁(yè)面上的一個(gè)渲染區域,并有一套渲染規則,規定了它內部元素的渲染方式 ,而B(niǎo)FC就表示“塊級格式化上下文”。對應的還有IFC,FFC,GFC等

我的理解就是:BFC是一種css渲染規則,規定了塊級元素的渲染規則。運用了BFC渲染規則的元素是一個(gè)獨立的渲染區域,和渲染規則,不會(huì )影響其他外部元素的布局

使用BFC規則后當前元素和內部元素表現

  1. BFC內部的Box(塊元素)會(huì )在垂直方向,一個(gè)接一個(gè)地放置
  2. Box垂直方向的距離由margin決定。屬于同一個(gè)BFC的兩個(gè)相鄰Box的margin會(huì )發(fā)生重疊
  3. 每個(gè)元素的左外邊距與包含塊的左邊界相接觸(從左向右),即使浮動(dòng)元素也是如此。
  4. BFC的區域不會(huì )與float元素區域發(fā)生重疊
  5. BFC就是頁(yè)面上的一個(gè)隔離的獨立容器,容器里面的子元素不會(huì )影響到外面的元素。反之也如此。
  6. 計算BFC的高度時(shí),浮動(dòng)元素也參與計算(可以解決浮動(dòng)元素的父元素高度塌陷問(wèn)題)

生成BFC規則的方式(抄自MDN)

  1. 根元素(html)默認生成一個(gè)BFC
  2. 浮動(dòng)元素(元素的 float 不是 none)
  3. 絕對定位元素(元素的 position 為 absolute 或 fixed)
  4. 行內塊元素(元素的 display 為 inline-block)
  5. 表格單元格(元素的 display為 table-cell,HTML表格單元格默認為該值)
  6. 表格標題(元素的 display 為 table-caption,HTML表格標題默認為該值)
  7. 匿名表格單元格元素(元素的 display為 table、table-row、 table-row-group、table-header-group、table-footer-group(分別是HTML table、row、tbody、thead、tfoot的默認屬性)或 inline-table)
  8. overflow 值不為 visible 的塊元素
  9. display 值為 flow-root 的元素
  10. contain 值為 layout、content或 paint 的元素
  11. 彈性元素(display為 flex 或 inline-flex元素的直接子元素)
  12. 網(wǎng)格元素(display為 grid 或 inline-grid 元素的直接子元素)
  13. 多列容器(元素的 column-count 或 column-width 不為 auto,包括 column-count 為 1)
  14. column-span 為 all 的元素始終會(huì )創(chuàng )建一個(gè)新的BFC,即使該元素沒(méi)有包裹在一個(gè)多列容器中(標準變更,Chrome bug)。

注:BFC包含創(chuàng )建它的元素內部的所有內容

BFC常用場(chǎng)景

一,解決浮動(dòng)的父元素高度塌陷問(wèn)題

I am a floated box!

I am content inside the container.

.box { background-color: pink; border: 2px solid skyblue; display: flow-root; } .float { float: left; width: 200px; height: 150px; background-color: white; border:1px solid black; padding: 10px; }

子元素設置float后,父級元素高度塌陷了。根據上面提到的BFC元素在計算高度的時(shí)候,會(huì )算上其中的浮動(dòng)元素的高度,所以上面例子中這種情況,可以設置父元素為BFC來(lái)解決:

I am a floated box!

I am content inside the container.

.box { background-color: pink; border: 2px solid skyblue; } .float { float: left; width: 200px; height: 150px; background-color: white; border:1px solid black; padding: 10px; }

二,解決margin重疊問(wèn)題

one
two
.mar30{margin:30px;}

根據BFC的獨立,不影響其他元素布局的特性,通過(guò)設置其中一個(gè)元素為BFC來(lái)解決:

one
two
.mar30{margin:30px;} .bfc{display:flow-root;}

 

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
整理高度塌陷與BFC
如何居中一個(gè)浮動(dòng)元素?
什么是BFC布局——淺析BFC布局的概念以及作用
CSSBFC規則的應用自適應兩欄布局
BFC
float與overflow
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久