React Native基礎(chǔ)之 Flexbox布局

一蔓肯、什么是Flexbox?
 彈性盒模型(The Flexible Box Module),又叫Flexbox创南,意為“彈性布局”,旨在通過彈性的方式來對齊和分布容器中內(nèi)容的空間省核,使其能適應(yīng)不同的屏幕稿辙,為盒裝模型提供最大的靈活性。
 Flex布局的主要思想是:讓容器有能力讓其子項目能夠改變其寬度气忠、高度(甚至是順序)邻储,以最佳方式填充可用空間。
二旧噪、Flex布局基于flex-flow流
 容器默認(rèn)存在兩根軸:水平的主軸(main axis)垂直的交叉軸(cross axis)吨娜。主軸的開始位置(與邊框的交叉點(diǎn))叫做main start,結(jié)束位置叫做main end淘钟;交叉軸的開始位置叫做cross start宦赠,結(jié)束位置叫做cross end勾扭。
 項目默認(rèn)沿主軸排列妙色,單個項目占據(jù)的主軸空間叫做main size身辨,占據(jù)的交叉軸空間叫做cross size芍碧。


 根據(jù)伸縮項目排列方式的不同定庵,主軸和側(cè)軸方向也有所變化:

三洗贰、Flex常用屬性
 1.容器屬性
 react-native中容器屬性有四種,分別是:flexDirction许布、flexWrap蜜唾、justifyContent庶艾、alignItems咱揍。
 1.1 flexDirection屬性
 該屬性決定主軸的方向(即項目的排列方向)煤裙。
 row:主軸為水平方向,起點(diǎn)在左端且蓬。
 row-reverse:主軸為水平方向恶阴,起點(diǎn)在右端冯事。
 column(默認(rèn)值 ):主軸為垂直方向沼填,起點(diǎn)在上沿坞笙。
 column-reverse:主軸為垂直方向薛夜,起點(diǎn)在下沿版述。



 1.2 flexWrap屬性
 默認(rèn)情況下晚伙,項目都排在一條線上(又稱“軸線”)上。flex-wrap屬性定義漓帚,如果一條軸線排不下尝抖,如何換行昧辽。


nowrap(默認(rèn)值 ):不換行


wrap:換行,第一行在上方


wrap-reverse:換行框咙,第一行在下方(和wrap 相反暇检,僅在網(wǎng)頁端可用)



 1.3 justifyContent 屬性
 該屬性定義了伸縮項目在主軸線的對齊方式
 flex-start(默認(rèn)值 ):伸縮項目向一行的起始位置靠齊块仆。
 flex-end:伸縮項目向一行的結(jié)束位置靠齊悔据。
 center:伸縮項目向一行的中間位置靠齊俗壹。
 space-between:兩端對齊,項目之間的間隔都相等头滔。
 space-around:伸縮項目會平均地分布在行里坤检,兩端保留一半的空間期吓。



 1.4 alignItems屬性
 定義伸縮項目在交叉軸上如何對齊箭跳,可以把其想像成側(cè)軸(垂直于主軸)的 “對齊方式”。
 flex-start :交叉軸的起點(diǎn)對齊拯刁。

 flex-end:交叉軸的終點(diǎn)對齊 垛玻。
 center:交叉軸的中點(diǎn)對齊帚桩。
 baseline:項目的第一行文字的基線對齊账嚎。(僅在web端可用郭蕉,react-native不可用)
 stretch(默認(rèn)值):如果項目未設(shè)置高度或設(shè)為 auto召锈,將占滿整個容器的高度涨岁。



 2.元素屬性
 2.1 flex屬性
通過添加flex屬性, 我們明確地將他選為flexbox模式秉撇。flex只能指定一個數(shù)字值秋泄,用來決定子元素間獲得相對權(quán)重的大小印衔,都設(shè)為1則獲得相等的權(quán)重大小奸焙,分別設(shè)為1与帆、3了赌、1則獲得的權(quán)重比為1:3:1。

 2.2 alignSelf屬性
 “auto | flex-start | flex-end | center | baseline | stretch”
 align-self屬性允許單個項目有與其他項目不一樣的對齊方式玄糟,可覆蓋align-items屬性勿她。
 默認(rèn)值為auto,表示繼承父元素的align-items屬性阵翎,如果沒有父元素逢并,則等同于stretch。


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末郭卫,一起剝皮案震驚了整個濱河市砍聊,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌贰军,老刑警劉巖玻蝌,帶你破解...
    沈念sama閱讀 206,482評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡米辐,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來斋竞,“玉大人,你說我怎么就攤上這事绢要。” “怎么了呼胚?”我有些...
    開封第一講書人閱讀 152,762評論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長漠另,這世上最難降的妖魔是什么满败? 我笑而不...
    開封第一講書人閱讀 55,273評論 1 279
  • 正文 為了忘掉前任净嘀,我火速辦了婚禮继低,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘焙压。我一直安慰自己幻件,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,289評論 5 373
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪鸭限。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,046評論 1 285
  • 那天帕识,我揣著相機(jī)與錄音晶姊,去河邊找鬼们衙。 笑死巍举,一個胖子當(dāng)著我的面吹牛炭分,可吹牛的內(nèi)容都是我干的观堂。 我是一名探鬼主播竞滓,決...
    沈念sama閱讀 38,351評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼俗冻,長吁一口氣:“原來是場噩夢啊……” “哼礁叔!你這毒婦竟也來了牍颈?” 一聲冷哼從身側(cè)響起迄薄,我...
    開封第一講書人閱讀 36,988評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎煮岁,沒想到半個月后讥蔽,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,476評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡画机,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,948評論 2 324
  • 正文 我和宋清朗相戀三年冶伞,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片步氏。...
    茶點(diǎn)故事閱讀 38,064評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡响禽,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出荚醒,到底是詐尸還是另有隱情芋类,我是刑警寧澤,帶...
    沈念sama閱讀 33,712評論 4 323
  • 正文 年R本政府宣布界阁,位于F島的核電站侯繁,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏泡躯。R本人自食惡果不足惜贮竟,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,261評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望较剃。 院中可真熱鬧咕别,春花似錦、人聲如沸写穴。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽确垫。三九已至弓颈,卻和暖如春帽芽,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背翔冀。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評論 1 262
  • 我被黑心中介騙來泰國打工导街, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人纤子。 一個月前我還...
    沈念sama閱讀 45,511評論 2 354
  • 正文 我出身青樓搬瑰,卻偏偏與公主長得像,于是被迫代替她去往敵國和親控硼。 傳聞我的和親對象是個殘疾皇子泽论,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,802評論 2 345

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

  • H5移動端知識點(diǎn)總結(jié) 閱讀目錄 移動開發(fā)基本知識點(diǎn) calc基本用法 box-sizing的理解及使用 理解dis...
    Mx勇閱讀 4,395評論 0 26
  • 移動開發(fā)基本知識點(diǎn) 一.使用rem作為單位 html { font-size: 100px; } @media(m...
    橫沖直撞666閱讀 3,453評論 0 6
  • flexbox是Flexible Box的縮寫, 彈性盒子布局, 主流的瀏覽器都支持 flexbox布局是伸縮容器...
    hophia閱讀 1,097評論 1 2
  • 前言 FlexBox是css3的一種新的布局方式,天生為解決布局問題而存在的它卡乾,比起傳統(tǒng)的布局方式翼悴,我們使用Fle...
    zevei閱讀 1,410評論 23 3
  • 潘云89年生人,他說他有哥幔妨,他哥有兒子鹦赎,要找不到能對付的人,他就一個人過一輩子误堡。潘云說抽煙的男人都是有故事的男人古话。...
    曉拙閱讀 105評論 0 0