一篇掌握Flex 布局方式及其所有屬性

目錄

傳統(tǒng)盒模型
Flexbox 布局方式
Flexbox 核心概念
Flex 容器屬性
  • flex-direction :項(xiàng)目元素排列的方向

  • flex-wrap :項(xiàng)目元素排列方式

  • justify-content : 項(xiàng)目在主軸上的對(duì)齊方式

  • align-items :項(xiàng)目在交叉軸上的對(duì)齊方式
  • align-content :多行項(xiàng)目的排列方式
Flex 項(xiàng)目屬性
  • order :項(xiàng)目的排列順序
  • flex-grow : 項(xiàng)目的放大比例
  • flex-basis :項(xiàng)目在主軸上的空間
  • align-self :項(xiàng)目的對(duì)齊方式

正文


  • 傳統(tǒng)盒模型 :通過(guò) display、float等參數(shù)來(lái)配置具體的布局,這種方式代碼簡(jiǎn)單笆焰,但是在處理實(shí)現(xiàn)諸如垂直居中搓蚪、彈性寬度和高度等特性時(shí)會(huì)極為麻煩。
  • Flexbox 布局方式 :可以快速的實(shí)現(xiàn)上述各種場(chǎng)景煌茴,以及更多非常常用的排版需求,例如:

    — 豎排元素
    — 元素左側(cè)/右側(cè)豎向?qū)R

Flexbox 核心概念


  • 在進(jìn)行Flexbox 布局時(shí),核心的屬性包括容器和項(xiàng)目:

— 容器 : Flexbox 中外部的容器
— 項(xiàng)目 : Flexbox 中內(nèi)部的項(xiàng)目

通過(guò)設(shè)置容器的參數(shù)创淡,來(lái)實(shí)現(xiàn)內(nèi)部項(xiàng)目按一定的順序來(lái)進(jìn)行排布:


Flex 容器屬性


  • 通過(guò)設(shè)置 Flex 容器的屬性,可以設(shè)置容器內(nèi)各項(xiàng)目的樣式

flex-direction :項(xiàng)目元素排列的方向

① 值為 row: 內(nèi)部項(xiàng)目從左向右排列

② 值為 row-reverse :內(nèi)部項(xiàng)目反轉(zhuǎn)橫向排列

③ 值為 column :內(nèi)部項(xiàng)目縱向?qū)R

④ 值為 column-reverse :內(nèi)部項(xiàng)目反轉(zhuǎn)縱向?qū)R

flex-wrap :項(xiàng)目元素排列方式
① 值為 nowrap : 項(xiàng)目元素不會(huì)溢出南吮,也不會(huì)自動(dòng)換行


② 值為 wrap : 當(dāng)項(xiàng)目元素的寬度超出容器的時(shí)候琳彩,就會(huì)自動(dòng)換行

③ 值為 wrap-reverse :子元素溢出容器時(shí)會(huì)反轉(zhuǎn)自動(dòng)換行

justify-content : 項(xiàng)目在主軸上的對(duì)齊方式

① 值為 flex-start :項(xiàng)目從主軸的開(kāi)始位置對(duì)齊

② 值為 flex-end : 項(xiàng)目從主軸的結(jié)束位置對(duì)齊

③ 值為 center :項(xiàng)目從主軸的中間開(kāi)始對(duì)齊

④ 值為 space-between :各項(xiàng)目之間保持相同的距離進(jìn)行排布


⑤ 值為 space-around :不僅各項(xiàng)目間保持相同的距離,且在兩側(cè)也會(huì)有一定的距離來(lái)保持排列

align-items :項(xiàng)目在交叉軸上的對(duì)齊方式
① 值為 flex-start :交叉軸的起點(diǎn)對(duì)齊

② 值為 flex-end:交叉軸的終點(diǎn)對(duì)齊

③ 值為 center :交叉軸的中點(diǎn)對(duì)齊

④ 值為 baseline:當(dāng)交叉軸與行內(nèi)軸為同一條時(shí)部凑,等價(jià)于 flex-start 露乏;其他情況下以項(xiàng)目的第一行文字的基線(xiàn)對(duì)齊

⑤ 值為 stretch (默認(rèn)值):如果項(xiàng)目未設(shè)置高度或設(shè)置為auto,則沾滿(mǎn)整個(gè)容器的高度涂邀。(同時(shí)收寬度和高度的限制)

align-content :多行項(xiàng)目的排列方式(定義多跟軸線(xiàn)的對(duì)齊方式殉挽,如果項(xiàng)目只有一根軸線(xiàn)鹃锈,該屬性不起作用)
① 值為 flex-start :與交叉軸的起點(diǎn)對(duì)齊

② 值為 flex-end :與交叉軸的終點(diǎn)對(duì)齊

③ 值為 center :與交叉軸的中點(diǎn)對(duì)齊


④ 值為 space-between :與交叉軸兩端對(duì)齊医瘫,軸線(xiàn)之間的距離平均分布

⑤ 值為 space-around :每根軸線(xiàn)兩側(cè)的間隔都相等竭贩,所以,軸線(xiàn)之間的間隔比軸線(xiàn)與邊框之間的間隔大一倍

⑥ 值為 stretch (默認(rèn)值):各行平均分配敷搪。軸線(xiàn)占滿(mǎn)整個(gè)交叉軸(同時(shí)受寬度和高度的影響)

Flex 項(xiàng)目屬性


  • 通過(guò)設(shè)置 flex 項(xiàng)目屬性兴想,我們可以控制各項(xiàng)目自己的屬性

order :項(xiàng)目的排列順序 (值越小,排列越靠前赡勘,默認(rèn)為0)


flex-grow : 項(xiàng)目的放大比例(默認(rèn)為0嫂便,即如果有剩余空間,也不放大)

flex-shrink :項(xiàng)目的縮小比例 (默認(rèn)為1闸与,即如果空間不足毙替,則項(xiàng)目將縮小)

如果所有的項(xiàng)目 flex-shrink 屬性都為1践樱,則空間不夠時(shí)厂画,都將等比例縮小。如果一個(gè)項(xiàng)目的 flex-shrink 屬性為0拷邢,其他項(xiàng)目都為1袱院,則空間不足時(shí),前者不縮小。

flex-basis :項(xiàng)目在主軸上的空間 (默認(rèn)為auto忽洛,即項(xiàng)目本來(lái)的大心寤荨),它可以設(shè)為跟 width 或 height 一樣的
值欲虚,如 150px 集灌,則項(xiàng)目將占據(jù)固定空間。


align-self :項(xiàng)目的對(duì)齊方式复哆,通過(guò)設(shè)置此屬性欣喧,可以讓項(xiàng)目和其他項(xiàng)目有不同的排列方式,可覆蓋 align-items 屬性梯找。默認(rèn)值為 auto续誉,表示繼承父元素的 align-items 屬性,如果沒(méi)有父元素初肉,則等同于 stretch 。此屬性有下圖中的6個(gè)值可選擇(除auto外饰躲,其他與align-items 可選值相同)牙咏。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市嘹裂,隨后出現(xiàn)的幾起案子妄壶,更是在濱河造成了極大的恐慌,老刑警劉巖寄狼,帶你破解...
    沈念sama閱讀 217,406評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件丁寄,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡泊愧,警方通過(guò)查閱死者的電腦和手機(jī)伊磺,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)删咱,“玉大人屑埋,你說(shuō)我怎么就攤上這事√底蹋” “怎么了摘能?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,711評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)敲街。 經(jīng)常有香客問(wèn)我团搞,道長(zhǎng),這世上最難降的妖魔是什么多艇? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,380評(píng)論 1 293
  • 正文 為了忘掉前任逻恐,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘梢莽。我一直安慰自己萧豆,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,432評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布昏名。 她就那樣靜靜地躺著涮雷,像睡著了一般。 火紅的嫁衣襯著肌膚如雪轻局。 梳的紋絲不亂的頭發(fā)上洪鸭,一...
    開(kāi)封第一講書(shū)人閱讀 51,301評(píng)論 1 301
  • 那天,我揣著相機(jī)與錄音仑扑,去河邊找鬼览爵。 笑死,一個(gè)胖子當(dāng)著我的面吹牛镇饮,可吹牛的內(nèi)容都是我干的蜓竹。 我是一名探鬼主播,決...
    沈念sama閱讀 40,145評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼储藐,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼俱济!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起钙勃,我...
    開(kāi)封第一講書(shū)人閱讀 39,008評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤蛛碌,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后辖源,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體蔚携,經(jīng)...
    沈念sama閱讀 45,443評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,649評(píng)論 3 334
  • 正文 我和宋清朗相戀三年克饶,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了酝蜒。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,795評(píng)論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡矾湃,死狀恐怖秕硝,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情洲尊,我是刑警寧澤远豺,帶...
    沈念sama閱讀 35,501評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站坞嘀,受9級(jí)特大地震影響躯护,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜丽涩,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,119評(píng)論 3 328
  • 文/蒙蒙 一棺滞、第九天 我趴在偏房一處隱蔽的房頂上張望裁蚁。 院中可真熱鬧,春花似錦继准、人聲如沸枉证。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,731評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)室谚。三九已至,卻和暖如春崔泵,著一層夾襖步出監(jiān)牢的瞬間秒赤,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,865評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工憎瘸, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留入篮,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,899評(píng)論 2 370
  • 正文 我出身青樓幌甘,卻偏偏與公主長(zhǎng)得像潮售,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子锅风,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,724評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容