亚洲视频二区I天堂网av 在线I丰满人妻AV一区二区三I088精品在线观看视频IAV在线网站免费I亚洲人成影院在线I91精品91久久久777777I131M久I日日摸日日

027-81331413

Flex布局在小程序的使用

發布時間:2020-12-16 瀏覽:2989

  Flex布局是一種十分靈活方便的布局方式,目前主流的現代瀏覽器基本都實現了對Flex布局的完全支持。而在微信小程序中,IOS端使用的渲染引擎WKWebView和安卓端使用的X5 ,也都實現了對Flex的支持。所以為了在小程序開發中更方便地布局,有必要來詳細了解下Flex布局在小程序的使用。本文將針對Flex布局的各個屬性進行介紹,并直接使用wxss來編寫例子,運行環境是小程序的開發者工具。

  Flex布局的基本概念

  Flex布局直接應用于一個Flex容器,布局的對象是容器中的各個項目元素(“item”)。項目元素布局的核心概念在于兩條軸:主軸和交叉軸,通過控制項目元素在主軸、交叉軸上的排列方式進行布局,參見下圖:

  

  這里要注意兩條軸的方向不是固定的(可以通過flex-direction來控制);此外一個Flex容器里可以再包含Flex容器,也就是能擁有多根主軸和交叉軸。

  Flex容器屬性

  容器屬性有6個:

  flex-direction

  flex-wrap

  flex-flow

  justify-content

  align-items

  align-content

  flex-direction

  設定主軸方向:

  row →(默認)

  row-reverse ←

  column ↓

  column-reverse↑

  

  flex-wrap

  規定如果容器在主軸方向無法容下所有項目,主軸上的項目如何換行(flex-direction為column和column-reverse時,就是“換列”了):

  nowrap(默認),即不作換行,各個項目相接觸時會擠壓使寬度變小

  wrap:換行,正常從上到下

  wrap-reverse:換行,只是各行在交叉軸上的排列方向和wrap時相反

  

  flex-flow

  flex-direction和flex-wrap的簡寫,默認值為“row wrap”。

  justify-content

  所有項目在主軸上對齊方式:

  none(默認)

  center:在主軸上居中

  flex-start:主軸起點對齊

  fex-end:主軸終點對齊

  space-between:兩端對齊,項目間間隔相等

  space-around:各項目兩側間隔相等

  

  align-items

  所有項目在交叉軸上對齊方式:

  stretch(默認),即項目取auto大小時拉伸以占滿容器的在交叉軸方向上的大小

  center:在交叉軸上居中

  flex-start:交叉軸起點對齊

  flex-end: 交叉軸終點對齊

  baseline:各項目第一行文字的基線對齊

  

  align-content

  定義了多根主軸的對齊方式,如果項目只有一根主軸則不起作用,多根主軸一般會在主軸上折行時出現:

  stretch(默認),即auto大小時主軸線上的項目會拉伸來占滿整個交叉軸。

  center:在交叉軸上居中

  flex-start:交叉軸起點對齊

  flex-end: 交叉軸終點對齊

  space-between:兩端對齊,項目間間隔相等

  space-around:各項目兩側間隔相等

  

  Flex項目屬性

  項目屬性有6個:

  order

  flex-basis

  flex-grow

  flex-shrink

  flex

  align-self

  order

  定義項目排列序號;默認為0,可為負:

  

  flex-basis

  在Flex項目自適應放大縮小之前,項目占據的主軸空間的基值。

  默認值為auto,即項目的本來大?。?/p>

  

  flex-grow

  注意該屬性指定的是項目對剩余空間的瓜分比例,這里有兩個關鍵點:

  容器在主軸上要有剩余空間

  該屬性是對剩余空間的瓜分,也即項目的最終大小是各項目的flex-basis大小、再加上瓜分得到的大小

  默認為0,即如果存在剩余空間也不放大(grow),不可為負:

  

  flex-shrink:

  空間不足時項目對縮小份額的瓜分比例,還是有兩個關鍵點:

  容器在主軸上空間不足以放下所有的項目

  空間不足可以讓項目縮小,而該屬性就是對縮小份額的瓜分,也即項目的最終大小是各項目的flex-basis大小、再減去瓜分得到的縮小份額

  默認為1,即如果空間不足項目將縮小,不可負:

  

  flex

  flex-grow, flex-shrink 和 flex-basis的簡寫。

  默認值為“0 1 auto”,還有兩個值auto即“1 1 auto”、none即“0 0 auto”。

  align-self

  讓一個項目有與其他項目不同的交叉軸對齊方式,主要用來覆蓋align-items屬性。

  默認值是auto,即繼承父元素的align-items屬性,若無父元素則等同于stretch;其他值效果和align-items一樣。

  

  總結

  Flex布局也叫彈性布局,個人理解所謂“彈性”主要體現在Flex項目的自伸縮上。主軸上的自伸縮主要通過flex-grow、flex-shrink來控制,交叉軸上的自伸縮則體現在align-*屬性的默認值stretch上。

  一些注意點

  一些屬性會在對Flex項目上無效:column-*屬性、float 和 clear、vertical-align 。

  在Flex容器使用 float 會導致Flex布局失效。


主站蜘蛛池模板: 婷婷在线综合 | 日韩视频在线一区 | 精品福利在线 | 中文字幕日韩高清 | 久久在线免费 | 精品在线你懂的 | 国产精品自拍在线 | 在线免费观看黄色小说 | 国产精品一区二区三区在线播放 | 欧美另类巨大 | 天天操导航 | 亚洲a资源 | 91精品视频在线播放 | 黄色三级在线观看 | 九九热中文字幕 | 91亚洲狠狠婷婷综合久久久 | 男女视频91| 精品视频123区在线观看 | 久久艹久久 | 国产尤物一区二区三区 | 91天堂影院| 成人免费观看av | 久久精品国产亚洲精品2020 | 欧美另类xxxxx | 日日操日日插 | 福利久久 | 97看片吧| 99久久精品免费一区 | 日日日网| 国产精品观看在线亚洲人成网 | 色婷婷伊人 | 久草色在线观看 | 日韩专区在线播放 | 天天射天天色天天干 | 日本精品午夜 | 国产在线一线 | 免费av影视| 黄色一级在线免费观看 | 日韩va亚洲va欧美va久久 | 久久综合久久综合这里只有精品 | 国产电影一区二区三区四区 | 亚洲国产免费看 | 欧美日本高清视频 | 天天色草 | 日韩视频在线不卡 | 粉嫩av一区二区三区入口 | www毛片com| 欧美成人精品欧美一级乱 | 97精品国产97久久久久久免费 | 国产成人一区二区三区免费看 | 中文在线www | 99看视频在线观看 | 97视频免费在线观看 | 亚洲影视九九影院在线观看 | 国产精品一区二区三区四区在线观看 | 中文字幕精品在线 | 国产精品原创视频 | 亚洲一区二区三区精品在线观看 | 成人午夜电影网 | 成人a在线观看高清电影 | 婷婷激情五月 | 美女福利视频 | 国产精品人成电影在线观看 | 国产自偷自拍 | 精品在线观看国产 | 字幕网av | 日本久久综合网 | 91免费版成人 | 国产偷国产偷亚洲清高 | 中午字幕在线观看 | 99久久久久成人国产免费 | 欧美大片aaa| 亚洲一区 av | 亚洲美女精品视频 | 国产精品 日韩 欧美 | 91看片在线免费观看 | 国产精品久久久久9999 | 色婷婷狠狠五月综合天色拍 | 五月婷婷激情综合网 | 肉色欧美久久久久久久免费看 | 久草av在线播放 | 天天操福利视频 | 日日添夜夜添 | 日韩中文字幕一区 | 日韩欧美视频一区二区 | 国产美女精品视频免费观看 | 国产一级视频免费看 | 亚洲高清视频在线播放 | 国产一级片播放 | 夜夜夜夜操 | 欧美视频二区 | 国产视频丨精品|在线观看 国产精品久久久久久久久久久久午夜 | 综合精品久久久 | 欧美日韩3p| 精品亚洲一区二区三区 | 黄色91在线观看 | 射九九 | 波多野结衣理论片 | 日韩精品中文字幕av |