Flex布局常见父项属性(三)- align-items, align-content和flex-flow

1.align-items用于设置侧轴上的子元素排列方式(单行)

该属性用于控制子元素在侧轴(默认为y轴)上的排列方式,在子元素为单项时使用

1.1属性值

属性值说明
flex-start从上到下;默认值
flex-end从下到上
center垂直居中
stretch拉伸

1.2案例

1.设置align-items属性值:center

为了能够更好区别,先设置主轴(x轴)居中,再设置侧轴(y轴)居中

            /* 父级添加flex属性 */
            display: flex;
            /* x轴居中 */
            justify-content: center;
            /* y轴居中 */
            align-items: center;

页面效果展示 - 垂直居中

 2.设置align-items属性值:flex-start

            align-items: flex-start;

页面效果展示 - 从上到下

 3.设置align-items属性值:flex-end

            align-items: flex-end;

页面效果展示 - 从下到上

  4.设置align-items属性值:stretch

注意:子元素不设置高度,否则没有效果

            align-items: stretch;

页面效果展示 - 拉伸


2.align-content用于设置侧轴上的子元素排列方式(多行)

设置子元素在轴上的排序方式并且只能用于子项出现换行的情况(多行)

2.1属性值

属性值说明
flex-start在侧轴的头部开始排序;默认值
flex-end在侧轴尾部开始排序
center在侧轴中间显示
space-around子元素在侧轴平分剩余的空间
space-between子元素在侧轴先分布在两端,再平分剩余空间
stretch设置子元素高度且平分父元素高度

2.2案例

先设置允许子元素换行,为了看得更清晰效果为子元素设置外边距margin: 10px

            flex-wrap: wrap;

1.设置align-content属性值:flex-start

            /* 父级添加flex属性 */
            display: flex;
            flex-wrap: wrap;
            /* 因为允许子元素换行,我们在侧轴上设置子元素对齐方式使用 align-content */
            align-content: flex-start;

页面效果展示 - 默认值,侧轴的头部开始排序

 2.设置align-content属性值:flex-end

            align-content: flex-end;

页面效果展示 - 侧轴的尾部开始排序

 3.设置align-content属性值:center

            align-content: center;

页面效果展示 - 在侧轴中间显示

 4.设置align-content属性值:space-around

            align-content: space-around;

页面效果展示 - 子元素在侧轴平分剩余的空间

 5.设置align-content属性值:space-between

            align-content: space-between;

页面效果展示 - 子元素在侧轴先分布在两端,再平分剩余空间

 

  6.设置align-content属性值:stretch

注意:子元素不设置高度,否则没有效果

            align-content: stretch;

页面效果展示 - 设置子元素高度且平分父元素高度


3.align-items和align-content区别

  • align-items适用子元素单行的情况下,只有上对齐、下对齐、居中和拉伸
  • align-content适用于子元素多行的情况下(单行情况下无法生效),可设置上对齐、下对齐、居中,平分侧轴剩余的空间、靠近两端再平分剩余空间和拉伸 属性值
  • 总的来说单行使用align-items,多行使用align-content

4.flex-flow

flex-flow属性是flex-direction和flex-wrap属性的复合属性,相当于同时设置flex-direction和flex-wrap

4.1案例

            /* 父级添加flex属性 */
            display: flex;
            flex-flow: column wrap;

页面展示效果 - 以y轴为主轴,且允许子元素换行

  • 28
    点赞
  • 148
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JHY97

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值