摘要:行內(nèi)級元素與行內(nèi)元素行內(nèi)級元素行內(nèi)級元素是那些不會(huì)為自身內(nèi)容形成新的塊,而讓內(nèi)容分布在多行中的元素。行內(nèi)元素行內(nèi)元素僅僅是屬性值為的元素。置換和非置換元素置換元素瀏覽器根據(jù)元素的標(biāo)簽和屬性,來決定元素的具體顯示內(nèi)容。
參考鏈接:
https://segmentfault.com/a/11...
https://juejin.im/post/59b73d...
面試之CSS篇 - 邊距重疊與BFC
塊級元素是那些視覺上會(huì)被格式化成塊狀的元素,通俗一點(diǎn)來說就是那些會(huì)換新行的元素。例例如:display屬性為block, list-item, table, flex, grid。
塊元素塊元素是 display 屬性值為 block 的元素,它應(yīng)該是 塊級元素 的一個(gè)子集。
行內(nèi)級元素與行內(nèi)元素 行內(nèi)級元素行內(nèi)級元素是那些不會(huì)為自身內(nèi)容形成新的塊,而讓內(nèi)容分布在多行中的元素。
例如:display屬性為inline, inline-table, inline-block, inline-flex, inline-grid。
行內(nèi)元素僅僅是display屬性值為inline的元素。
置換和非置換元素 置換元素瀏覽器根據(jù)元素的標(biāo)簽和屬性,來決定元素的具體顯示內(nèi)容。
常見的置換元素有這些:img,input,textarea,select,button等
若寬高的計(jì)算值都為 auto 且元素有固有寬度,則 width 的使用值為該固有寬度
若寬度的計(jì)算值為 auto 且元素有固有寬度,則 width 的使用值為該固有寬度
若寬度的計(jì)算值為 auto 且高度有 非auto 的計(jì)算值,并且元素有固有寬高比,則 width的使用值為“高度使用值 * 固有寬高比”
比如img 當(dāng)只定義了其高度值時(shí),其寬度將會(huì)根據(jù)固有寬高比進(jìn)行等比設(shè)置
除此之外,當(dāng) width 的計(jì)算值為 auto 時(shí),則寬度的使用值為 300px
比如iframe, canvas#####置換元素高度定義
若寬高的計(jì)算值都為 auto 且元素有固有高度,則height的使用值為該固有高度
若高度的計(jì)算值為 auto 且元素有固有高度,則height的使用值為該固有高度
若高度的計(jì)算值為 auto 且寬度有 非auto 的計(jì)算值,并且元素有固有寬高比,則 height 的使用值為:寬度使用值/固有寬高比
若高度的計(jì)算值為 auto 且上述條件完全不符,則height的使用值不能大于150px,且寬度不能大于長方形高度的2倍
非置換元素瀏覽器中的大多數(shù)元素都是不可置換元素,即其內(nèi)容直接展示給瀏覽器。
非置換元素,寬度設(shè)置是不適用BFC
BFC全稱”Block Formatting Context”, 中文為“塊級格式化上下文”。
BFC就是頁面上的一個(gè)隔離的渲染區(qū)域,容器里面的子元素不會(huì)在布局上影響到外面的元素,反之也是如此觸發(fā)BFC
根元素
float的值不為none
overflow的值為auto,scroll或hidden
display的值為table-cell、table-caption、inline-block、flex 或 inline-flex
position的值不為relative和static
BFC布局規(guī)則內(nèi)部的盒子會(huì)在垂直方向,一個(gè)個(gè)地放置
盒子垂直方向的距離由margin決定,屬于同一個(gè)BFC的兩個(gè)相鄰Box的上下margin會(huì)發(fā)生重疊
每個(gè)元素的左邊,與包含的盒子的左邊相接觸,即使存在浮動(dòng)也是如此
BFC的區(qū)域不會(huì)與float重疊
BFC就是頁面上的一個(gè)隔離的獨(dú)立容器,容器里面的子元素不會(huì)影響到外面的元素,反之也如此
計(jì)算BFC的高度時(shí),浮動(dòng)元素也參與計(jì)算
IFCIFC(Inline Formatting Contexts)直譯為"內(nèi)聯(lián)格式化上下文"。
IFC布局規(guī)則在一個(gè)IFC中,從父級元素的頂部開始,盒子一個(gè)接一個(gè)橫向排列
一個(gè)line box總是足夠高對于包含在它內(nèi)的所有盒子。然后,它也許比包含在它內(nèi)最高的盒子高
當(dāng)盒子的高度比包含它的line box的高度低,在line box內(nèi)的盒子的垂直對齊線通過"vertical align"屬性決定
當(dāng)在一行中行內(nèi)級盒子的總寬度比包含他們的line box的寬度小,他們的在line box中的水平放置位置由"text align"屬性決定
當(dāng)一個(gè)行內(nèi)盒子超過了line box的寬度,則它被分割成幾個(gè)盒子并且這些盒子被分配成幾個(gè)橫穿過的line boxs
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/114407.html
摘要:完整的說法是屬于同一個(gè)的倆個(gè)相鄰的的會(huì)發(fā)生重疊,與方向無關(guān)。元素會(huì)位于與與之間,使得寬度縮短。簡單的說,有了之后,布局不再局限于單個(gè)維度了。 什么是FC? Formatting Context,格式化上下文,指頁面中一個(gè)渲染區(qū)域,擁有一套渲染規(guī)則,它決定了其子元素如何定位,以及與其他元素的相互關(guān)系和作用。 BFC 什么是BFC Block Formatting Context,塊級格式...
摘要:完整的說法是屬于同一個(gè)的倆個(gè)相鄰的的會(huì)發(fā)生重疊,與方向無關(guān)。元素會(huì)位于與與之間,使得寬度縮短。簡單的說,有了之后,布局不再局限于單個(gè)維度了。 什么是FC? Formatting Context,格式化上下文,指頁面中一個(gè)渲染區(qū)域,擁有一套渲染規(guī)則,它決定了其子元素如何定位,以及與其他元素的相互關(guān)系和作用。 BFC 什么是BFC Block Formatting Context,塊級格式...
摘要:行寬的高度為包含框的高度,高度為行框中最高元素的高度。行框的寬度容納不下子元素時(shí),子元素會(huì)換到下一行顯示,并且會(huì)產(chǎn)生新的行框。 一、BFC Block Formatting Contexts (BFC,塊級格式化上下文),就是 一個(gè)塊級元素 的渲染顯示規(guī)則。 (可以把 BFC 理解為一個(gè)封閉的大箱子,容器里面的子元素不會(huì)影響到外面的元素)。 1、BFC的布局規(guī)則例如以下: ①.內(nèi)...
摘要:行寬的高度為包含框的高度,高度為行框中最高元素的高度。行框的寬度容納不下子元素時(shí),子元素會(huì)換到下一行顯示,并且會(huì)產(chǎn)生新的行框。 一、BFC Block Formatting Contexts (BFC,塊級格式化上下文),就是 一個(gè)塊級元素 的渲染顯示規(guī)則。 (可以把 BFC 理解為一個(gè)封閉的大箱子,容器里面的子元素不會(huì)影響到外面的元素)。 1、BFC的布局規(guī)則例如以下: ①.內(nèi)...
閱讀 2327·2021-11-23 09:51
閱讀 5730·2021-09-22 15:39
閱讀 3376·2021-09-02 15:15
閱讀 3525·2019-08-30 15:54
閱讀 2384·2019-08-30 15:53
閱讀 1425·2019-08-30 14:04
閱讀 2477·2019-08-29 18:33
閱讀 2409·2019-08-29 13:08