談談我對flexbox的理解

2021-07-10 14:09:36 字數 2335 閱讀 9738

寫在開頭:

關於flex,學了很久的前端了,偶爾也在用,尤其是當需要水平居中的時候,就用display:flex,感覺非常好用。但是其實對於flex的理解並不是很到位,根本都不懂flex,所以正兒八經的來研究一下flexbox。

flex布局模型不同於塊和內聯模型布局,塊和內聯模型的布局計算依賴於塊和內聯的流方向,而flex布局依賴於flex directions.簡單的說:flexbox是布局模組,而不是乙個簡單的屬性,它包含父元素(flex container)子元素(flex items)的屬性。

主軸、主軸方向(main axis |main dimension):使用者**沿著乙個伸縮容器的主軸配置伸縮專案,主軸是主軸方向的延伸。

主軸起點、主軸終點(main-start |main-end):伸縮專案的配置從容器的主軸起點邊開始,往主軸終點邊結束。

主軸長度、主軸長度屬性(main size |main size property):伸縮專案的在主軸方向的寬度或高度就是專案的主軸長度,伸縮專案的主軸長度屬性是width或height屬性,由哪乙個對著主軸方向決定。

側軸、側軸方向(cross axis |cross dimension):與主軸垂直的軸稱作側軸,是側軸方向的延伸。

側軸起點、側軸終點(cross-start |cross-end):填滿專案的伸縮行的配置從容器的側軸起點邊開始,往側軸終點邊結束。

側軸長度、側軸長度屬性(cross size |cross size property):伸縮專案的在側軸方向的寬度或高度就是專案的側軸長度,伸縮專案的側軸長度屬性是」width」或」height」屬性,由哪乙個對著側軸方向決定。

任何乙個容器都可以指定為flex布局。

.container

行內元素

.item

設為flex布局以後,子元素的floatclearvertical-align屬性將失效。

order: ;
*flex-grow定義專案的放大比例,預設為0,即如果存在剩餘空間,也不放大。

flex-grow: ;
.item

.item

.item

.item

lang="en">

charset="utf-8">

centertitle>

rel="stylesheet"

href="./center.css">

head>

class="parent">

class="child">

div>

div>

body>

html>

body

.parent

.child

lang="en">

charset="utf-8">

sixtitle>

rel="stylesheet"

href="./six.css">

head>

class="flex-container">

class="flex-item">1li>

class="flex-item">2li>

class="flex-item">3li>

class="flex-item">4li>

class="flex-item">5li>

class="flex-item">6li>

ul>

body>

html>

body

ulli

.flex-container

.flex-item

參考文獻:

我對Flexbox布局模式的理解

flexbox,一種css3的布局模式,也叫做彈性盒子模型,用來為盒裝模型提供最大的靈活性。首先舉乙個栗子,之前我們是這樣實現乙個div盒子水平垂直居中的。在知道物件高寬的情況下,對居中元素絕對百分比定位,然後通過margin偏移的方式來實現。container box 假如使用了flex後,實現起...

談談我對bloom filter的理解。

我們都看過封神榜吧,每乙個神位都對應著乙個人。在西周時代,如果乙個人聲稱自己是神,那麼他必須可以通過封神榜的驗證,如果封神榜驗證了下這個人,發現神位上根本沒這號人,那麼這個人絕對不是神。但是封神榜的驗證方式是有漏洞的,那些企圖依靠神的名聲招搖撞騙的人之中,有些人發現了這個秘密,他們可以通過偽造自己的...

談談我對DI的理解

本文中di指依賴倒置。依賴的概念 baidu百科 依靠別人或事物而不能自立或自給。軟體開發中的依賴 依賴描述了兩個模型元素之間的關係,如果被依賴的模型元素發生變化就會影響到另乙個模型元素。di的概念 a.上層模組不應該依賴於下層模組,它們共同依賴於乙個抽象。b.抽象不能依賴於具象,具象依賴於抽象。例...