微信小程序之Flex布局

一、Flex 基本概念

(1)主轴【main axis】:默认为水平方向;
(2)交叉轴【cross axis】:垂直于主轴,默认为竖直方向;
(3)通过修改使垂直方向变为主轴,水平方向变为交叉轴
在这里插入图片描述

二、Flex 容器

任何一个容器都可以被指定为 flex 布局,简单说来,如果你使用块元素如 div,你就可以使用 flex,而如果你使用行内元素,你可以使用 inline-flex。设置 flex 布局之后,子元素的 float、clear、vertical-align 的属性将会失效。

.container {   
     display: flex | inline-flex;//可以有两种取值
 }
  • flex:块状 flex 容器
  • inline-flex:行内 flex 容器

三、Flex 容器属性

1. flex-direction

flex-direction :决定主轴的方向

.container{
    flex-direction: row | row-reverse | column | column-reverse;
}
  • row【默认值】:主轴为水平方向,起点在左端。【column类似】
    在这里插入图片描述
  • row-reverse:主轴为水平方向,起点在右端。【column-reverse类似】

在这里插入图片描述

2. flex-wrap

flex-wrap:决定容器内项目是否可换行

  • nowrap【默认】:不换行
  • wrap:换行
  • wrap-reverse:换行倒序
.container {
    flex-wrap: nowrap | wrap | wrap-reverse;
}

在这里插入图片描述

3. flex-flow

flex-flow:flex-direction 和 flex-wrap 的简写形式;一般不用这种写法,建议分开写;

.container {
    flex-flow: <flex-direction> || <flex-wrap>;
}

4. justify-content

justify-content:定义了项目在主轴的对齐方式。

.container {    
    justify-content: flex-start | flex-end | center | space-between | space-around;
}
  • flex-start【默认】:左对齐
  • flex-end:右对齐
  • center:居中
  • space-between:两端对齐,项目之间的间隔相等,即剩余空间等分成间隙。
  • space-around:每个项目两侧的间隔相等,所以项目之间的间隔比项目与边缘的间隔大一倍

5. align-items

align-items:定义了项目在交叉轴上的对齐方式

.container {
    align-items: flex-start | flex-end | center | baseline | stretch;
}
  • flex-start:左对齐
  • flex-end:右对齐
  • center:居中
  • stretch: 即如果项目未设置高度或者设为 auto,将占满整个容器的高度
  • baseline:项目的第一行文字的基线对齐

6. align-content

align-content:定义了多根轴线的对齐方式,如果项目只有一根轴线,那么该属性将不起作用;

.container {
    align-content: flex-start | flex-end | center | space-between | space-around | stretch;
}
  • flex-start【默认】:轴线全部在交叉轴上的起点对齐
  • flex-end:轴线全部在交叉轴上的终点对齐
  • center:轴线全部在交叉轴上的中间对齐
  • space-between:两端对齐,项目之间的间隔相等,即剩余空间等分成间隙。
  • space-around:每个项目两侧的间隔相等,所以项目之间的间隔比项目与边缘的间隔大一倍
  • 6
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值