2018-09-12 如果面試官問你什么是BFC會發(fā)生什么?

什么也不會發(fā)生謝謝

原文鏈接

BFC(Block Formatting Context)直譯為“塊級格式化范圍”。是 W3C CSS 2.1 規(guī)范中的一個(gè)概念,它決定了元素如何對其內(nèi)容進(jìn)行定位,以及與其他元素的關(guān)系和相互作用
當(dāng)涉及到可視化布局的時(shí)候,Block Formatting Context提供了一個(gè)環(huán)境,HTML元素在這個(gè)環(huán)境中按照一定規(guī)則進(jìn)行布局。一個(gè)環(huán)境中的元素不會影響到其它環(huán)境中的布局。比如浮動(dòng)元素會形成BFC,浮動(dòng)元素內(nèi)部子元素的主要受該浮動(dòng)元素影響,兩個(gè)浮動(dòng)元素之間是互不影響的。這里有點(diǎn)類似一個(gè)BFC就是一個(gè)獨(dú)立的行政單位的意思。
也可以說BFC就是一個(gè)作用范圍??梢园阉斫獬墒且粋€(gè)獨(dú)立的容器,并且這個(gè)容器的里box的布局,與這個(gè)容器外的毫不相干

  • 怎么形成BFC

    1. float的值不能為none
    2. overflow的值不能為visible
    3. display的值為table-cell, table-caption, inline-block中的任何一個(gè)
    4. position的值不為relative和static
  • BFC的約束規(guī)則

    1. 內(nèi)部的Box會在垂直方向上一個(gè)接一個(gè)的放置
    2. 垂直方向的距離有margin決定(屬于同一個(gè)BFC的兩個(gè)相鄰Box的margin會發(fā) 生重疊,與方向無關(guān))
    3. 每個(gè)元素的margin box的左邊, 與包含塊border box的左邊相接觸(對于從左往右的格式化,否則相反)。即使存在浮動(dòng)也是如此
    4. BFC的區(qū)域不會與float的元素區(qū)域重疊
    5. 計(jì)算BFC的高度時(shí),浮動(dòng)子元素也參與計(jì)算
    6. BFC就是頁面上的一個(gè)隔離的獨(dú)立容器,容器里面的子元素不會影響到外面元素,反之亦然
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 14,131評論 1 92
  • 1. 前言 前端圈有個(gè)“梗”:在面試時(shí),問個(gè)css的position屬性能刷掉一半人,其中不乏工作四五年的同學(xué)。在...
    YjWorld閱讀 4,911評論 5 15
  • 先前在學(xué)習(xí)CSS float時(shí),有同學(xué)提到了BFC這個(gè)詞,作為求知好問的好學(xué)生,哪里不懂查哪里,那么今天就來研究一...
    這名字真不對閱讀 6,688評論 3 19
  • relative:生成相對定位的元素,通過top,bottom,left,right的位置相對于其正常位置進(jìn)行定位...
    zx9426閱讀 1,075評論 0 2
  • 今天吃過晚飯,泡腳的時(shí)候,老爸一人發(fā)了個(gè)大紅包,那本是賣地的補(bǔ)償款,他們留了零頭,剩下的大頭跟我們姐妹三個(gè)分...
    長路曼曼1982閱讀 471評論 0 0

友情鏈接更多精彩內(nèi)容