原文首发于微信公众号:jzman-blog,欢迎关注交流!小程序
Flex 是 W3C 提出的一种新的布局方案,能够很是方便的完成响应式页面布局,到目前为止几乎全部浏览器都支持,Flex 是 Flexible Box 的缩写,翻译过来是"弹性布局"的意思,下面一块儿来学习 Flex 布局的使用。微信小程序
采用 Flex 布局的元素称为 Flex 容器,全部子元素将自动成为容器成员,也能够称之为 Flex 项目,也就是该 Flex 布局的子 View ,下面是 Flex 布局默认设置下的示意图:浏览器
如上图所示,默认的 Flex 容器的存在两个轴:水平的主轴(main axis)和垂直的交叉轴(cross axis),主轴和交叉轴的方向不是绝对的,而是会由于设置的不一样而不一样,下面是与主轴和交叉轴相关的几个位置:微信
row | row-revarse | column | column-revarse |
---|---|---|---|
![]() |
![]() |
![]() |
![]() |
nowrap | wap | wrap-revarse |
---|---|---|
![]() |
![]() |
![]() |
flex-flow:flex-direction 属性和 flex-wrap 属性的简写形式,默认值为 row nowrap。网络
justify-content:设置项目在主轴上的对齐方式,可设置的值以下:布局
flex-start | flex-end | center | space-between | space-around | space-evenly |
---|---|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
stretch | flex-start | flex-end | center | baseline |
---|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
stretch | flex-start | flex-end | center | space-between | space-around |
---|---|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
flow-grow=0 | flow-grow=1 | flow-grow设置不一样值 |
---|---|---|
![]() |
![]() |
![]() |
flow-shrink=1 | flow-shrink=0 | flow-shrink设置不一样值 |
---|---|---|
![]() |
![]() |
![]() |
上面图示中,当 flex-shrink 全设置为 0,每一个项目不会缩放,因此第四个方块被挤出去了,而相应的设置 flex-shrink 为 1,则能够在空间不足是进行必定程度的缩放。学习
auto | stretch | flex-start | flex-end | center | baseline |
---|---|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
上面的效果中设置 auto 会跟随 flex 容器中 align-items 的设置。flex
最近尝试了一下微信小程序,感受开发起来难度也不是很大,以为本篇文章的内容也是微信小程序中最重要的内容了,原本打算继续进行小程序系列的学习,可是看了一下后面的内容无非就是小程序各个组件的使用了,若是有其余项目的开发经验,实在不必一个组件一个组件去验证学习,因此小程序的学习就到此为止,最后,说一点微信小程序最重要的我以为仍是 Flex 布局。能够选择关注我的微信公众号:jzman-blog 获取最新更新,一块儿交流学习!spa