百度前端技術(shù)學(xué)院2017flexbox學(xué)習(xí)

百度前端技術(shù)學(xué)院2017已經(jīng)結(jié)束最欠,本文是之前學(xué)習(xí)中涉及的flex知識(shí)小結(jié)吼畏。

flex布局在網(wǎng)頁(yè)布局中非常實(shí)用姑丑,尤其是在面對(duì)一些較為彈性的布局設(shè)置的時(shí)候,會(huì)有異常驚艷的表現(xiàn)岖妄。在目前流行的響應(yīng)式布局觀念里型将,面對(duì)大的項(xiàng)目寂祥,一般采用bootstrap的柵格化布局來(lái)應(yīng)對(duì)荐虐,而對(duì)于一些小的項(xiàng)目,則完全可以采用flex布局丸凭。

對(duì)flex布局的學(xué)習(xí)福扬,我認(rèn)為關(guān)鍵是抓住伸縮容器和伸縮項(xiàng)目這兩個(gè)概念铛碑,圍繞這兩個(gè)概念,利用屬性來(lái)改變兩者之間的相對(duì)關(guān)系虽界,既是flex布局。本文主要從基本術(shù)語(yǔ)撇吞、常用屬性兩方面進(jìn)行梳理。

基本術(shù)語(yǔ):伸縮容器迄薄、伸縮項(xiàng)目煮岁;主軸、主軸方向冶伞、主軸起點(diǎn)步氏、終點(diǎn)、主軸長(zhǎng)度金抡、主軸長(zhǎng)度屬性(同理有側(cè)軸的一套基本術(shù)語(yǔ))腌且。下面一張圖可以攘括這一套基本術(shù)語(yǔ)的概念(轉(zhuǎn)自w3cplus铺董,非常慶幸站在巨人的肩膀上,感謝前端領(lǐng)域大漠老師等眾大牛):

需要注意的是坝锰,flex的主側(cè)軸并不是對(duì)應(yīng)的元素width顷级、height确垫,主軸長(zhǎng)度既可以是width值,也可以是height值翔冀,依據(jù)具體屬性的設(shè)置而來(lái)披泪。

常用屬性:我認(rèn)為可以把屬性歸納為兩類來(lái)學(xué)習(xí):一類寫進(jìn)伸縮容器里,一類寫在伸縮項(xiàng)目里跌捆。

A.寫進(jìn)伸縮容器內(nèi)的屬性:這些屬性控制的主要都是伸縮項(xiàng)目在容器內(nèi)的布局象颖。

1.最主要的屬性,display:flex/inline-flex抄瓦。將容器設(shè)置為伸縮容器钙姊;

2.flex-flow:控制伸縮項(xiàng)目在容器內(nèi)的伸縮流方向和行數(shù)埂伦;這個(gè)屬性實(shí)則為flex-direction和flex-wrap的縮寫:
(1).flex-driection:控制伸縮流方向,屬性值有row(默認(rèn))膊毁、row-reverse婚温、column媳否、column-reverse篱竭,術(shù)語(yǔ)描述為主軸方向分別與文檔書寫方向平行或反向平行,主軸方向分別與塊布局方向平行或反向平行掺逼,如果直白描述坪圾,可以簡(jiǎn)單當(dāng)作從左至右/從右至左/從上到下/從下到上惑朦。
(2).flex-wrap:控制伸縮項(xiàng)目單行還是多行排列,屬性值有nowrap(默認(rèn)病梢,單行)蜓陌,wrap(多行),wrap-reverse(多行填抬,側(cè)軸方向交換)。

3.align-items:沿側(cè)軸方向?qū)R方式飒责,屬性值有flex-start(伸縮項(xiàng)目沿著伸縮容器側(cè)軸起點(diǎn)邊對(duì)齊)宏蛉,flex-end(側(cè)軸終點(diǎn)邊對(duì)齊)性置,center(同一行的伸縮項(xiàng)目沿著該行中線對(duì)齊),stretch(伸縮項(xiàng)目拉伸填充至同一高度)嗅义,baseline(沿著伸縮項(xiàng)目文字基線對(duì)齊)芥喇。

4.justify-content:沿主軸方向?qū)R凰萨。屬性值有flex-start(伸縮項(xiàng)目從主軸起點(diǎn)開(kāi)始往終點(diǎn)排列)胖眷,flex-end(伸縮項(xiàng)目從主軸終點(diǎn)開(kāi)始往起點(diǎn)排列)珊搀,center(居中排列,如果伸縮項(xiàng)目設(shè)有margin囚枪,會(huì)有margin值間距)链沼,space-between(伸縮項(xiàng)目平均分布沛鸵,且兩側(cè)項(xiàng)目靠近起終點(diǎn))缆八,space-around(平均分布兩側(cè)會(huì)留出平均分配寬度一半的值)奈辰。

5.align-content:(我的理解是奖恰,多行情況下房官,每一行作為一個(gè)大的伸縮項(xiàng)目续滋,沿側(cè)軸對(duì)齊方式疲酌,此時(shí)與justify-content的屬性值作用原理相同),屬性值有flex-start湿颅、flex-end油航、center、space-btween谊囚、space-around镰踏、stretch。

寫進(jìn)伸縮項(xiàng)目?jī)?nèi)的屬性:主要有兩個(gè)沙合,或者說(shuō)四個(gè)奠伪,分別控制了項(xiàng)目出現(xiàn)的順序和伸縮狀態(tài)。

1.order:在伸縮容器內(nèi)首懈,利用此屬性绊率,完全不依靠對(duì)html結(jié)構(gòu)的改變,就可以改變伸縮項(xiàng)目的出現(xiàn)順序究履。默認(rèn)值都為0滤否,值越高,越排在后面(整數(shù)值)挎袜。

2.flex(實(shí)為flex-grow/flow=shrink/flex-basis這個(gè)屬性縮寫)顽聂。格式為flex:flex-grow flow=shrink flex-basis肥惭。其中:
(1).flex-grow:為伸縮項(xiàng)目所占的空間比例或者空間的伸長(zhǎng)比例(正數(shù))盯仪,與伸縮項(xiàng)目數(shù)相關(guān)紊搪,也需要與flex-basis相配合才能準(zhǔn)確定義。默認(rèn)值為1(如果省略)全景。
(2).flex-basis:伸縮項(xiàng)目的初始長(zhǎng)度,為帶長(zhǎng)度單位的值滞伟。如果為0(默認(rèn)值),此時(shí)伸縮項(xiàng)目會(huì)按照f(shuō)lex-gorw所設(shè)置的值形成的比例來(lái)分配其所占伸縮容器的主軸長(zhǎng)度亩钟。如果設(shè)置為auto,該伸縮項(xiàng)目的長(zhǎng)度等于其寬度或高度屬性值(取決于主軸方向),此時(shí),當(dāng)伸縮容器主軸的長(zhǎng)度大于伸縮項(xiàng)目初始長(zhǎng)度之和時(shí)荸频,多出的長(zhǎng)度會(huì)按照f(shuō)lex-grow值的比例來(lái)分配給各伸縮容器场仲。
(3.)flow=shrink:伸縮項(xiàng)目的收縮比例,當(dāng)伸縮項(xiàng)目長(zhǎng)度之和大于伸縮容器主軸長(zhǎng)度時(shí)馍忽,多出來(lái)的長(zhǎng)度按照這個(gè)值的比例平均分配給各伸縮項(xiàng)目進(jìn)行收縮。(默認(rèn)值為1)喂窟。
此外质和,flex綜合屬性有兩個(gè)特定值auto和initial。兩者分別表示flex:1 1 auto弃锐;flex:0 1 auto支竹。

以上,是對(duì)flex學(xué)習(xí)后的理解扎运。主要參考Flexbox——快速布局神器
此外,自己在寫demo過(guò)程中編寫了一個(gè)簡(jiǎn)單的flex布局花吟,通過(guò)在chrome瀏覽器里運(yùn)行遣蚀,利用開(kāi)發(fā)者工具可以適時(shí)動(dòng)態(tài)查看以上屬性的差別。
  demo;

小星的博客|Small Star' Blog

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末累奈,一起剝皮案震驚了整個(gè)濱河市戒努,隨后出現(xiàn)的幾起案子萤皂,更是在濱河造成了極大的恐慌,老刑警劉巖蛤奥,帶你破解...
    沈念sama閱讀 219,539評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件喻括,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡望蜡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評(píng)論 3 396
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)腕侄,“玉大人小泉,你說(shuō)我怎么就攤上這事分预∏绻” “怎么了净响?”我有些...
    開(kāi)封第一講書人閱讀 165,871評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵牺荠,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我休雌,道長(zhǎng)灶壶,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書人閱讀 58,963評(píng)論 1 295
  • 正文 為了忘掉前任杈曲,我火速辦了婚禮驰凛,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘担扑。我一直安慰自己恰响,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,984評(píng)論 6 393
  • 文/花漫 我一把揭開(kāi)白布魁亦。 她就那樣靜靜地躺著渔隶,像睡著了一般羔挡。 火紅的嫁衣襯著肌膚如雪洁奈。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書人閱讀 51,763評(píng)論 1 307
  • 那天绞灼,我揣著相機(jī)與錄音利术,去河邊找鬼。 笑死低矮,一個(gè)胖子當(dāng)著我的面吹牛印叁,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播军掂,決...
    沈念sama閱讀 40,468評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼轮蜕,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了蝗锥?” 一聲冷哼從身側(cè)響起跃洛,我...
    開(kāi)封第一講書人閱讀 39,357評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎终议,沒(méi)想到半個(gè)月后汇竭,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,850評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡穴张,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,002評(píng)論 3 338
  • 正文 我和宋清朗相戀三年细燎,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片皂甘。...
    茶點(diǎn)故事閱讀 40,144評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡玻驻,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出偿枕,到底是詐尸還是另有隱情璧瞬,我是刑警寧澤佛析,帶...
    沈念sama閱讀 35,823評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站彪蓬,受9級(jí)特大地震影響寸莫,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜档冬,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,483評(píng)論 3 331
  • 文/蒙蒙 一膘茎、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧酷誓,春花似錦披坏、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 32,026評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至玫氢,卻和暖如春帚屉,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背漾峡。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 33,150評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工攻旦, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人生逸。 一個(gè)月前我還...
    沈念sama閱讀 48,415評(píng)論 3 373
  • 正文 我出身青樓牢屋,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親槽袄。 傳聞我的和親對(duì)象是個(gè)殘疾皇子烙无,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,092評(píng)論 2 355

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

  • 問(wèn)答題47 /72 常見(jiàn)瀏覽器兼容性問(wèn)題與解決方案? 參考答案 (1)瀏覽器兼容問(wèn)題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 13,754評(píng)論 1 92
  • H5移動(dòng)端知識(shí)點(diǎn)總結(jié) 閱讀目錄 移動(dòng)開(kāi)發(fā)基本知識(shí)點(diǎn) calc基本用法 box-sizing的理解及使用 理解dis...
    Mx勇閱讀 4,511評(píng)論 0 26
  • 移動(dòng)開(kāi)發(fā)基本知識(shí)點(diǎn) 一.使用rem作為單位 html { font-size: 100px; } @media(m...
    橫沖直撞666閱讀 3,477評(píng)論 0 6
  • flex布局基礎(chǔ)知識(shí) main axis(主軸): Flex容器的主軸主要用來(lái)配置Flex項(xiàng)目遍尺。它不一定是水平截酷,這...
    前端小兵閱讀 494評(píng)論 0 1
  • 一般而言,一個(gè)靜態(tài)web頁(yè)面的呈現(xiàn)需要通過(guò)html和css配合實(shí)現(xiàn)狮鸭。html相當(dāng)于頁(yè)面的骨架合搅,規(guī)定了文檔的結(jié)構(gòu)。c...
    夏木與晴空閱讀 1,068評(píng)論 0 3