Flex布局

6 篇文章 0 订阅

2009年,W3C 提出了一种新的方案----Flex 布局,可以简便、完整、响应式地实现各种页面布局。
Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性。
采用 Flex 布局,父元素简称"容器"。它的所有子元素自动成为容器成员,简称"项目"。
**

div { width: 800px; height: 600px; margin: 100px auto; border: 3px solid purple; display: flex;}
【改变主轴方向】

  • 项目按行显示
    flex-direction: row;

  • 项目按行倒序显示
    flex-direction: row-reverse;

  • 项目按列显示
    flex-direction: column;

  • 项目按列倒序显示
    flex-direction: column-reverse;

【设置项目是否换行】
设置项目不换行(默认值),即n个项目都会在主轴方向显示。
如果项目尺寸之和大于容器主轴的尺寸,则项目自动缩小相应比例 。

  • 设置项目换行,超出主轴的宽,则进行换行
    flex-wrap: wrap;

  • 设置项目倒序换行
    flex-wrap: wrap-reverse;

  • 主轴方向与换行的缩写
    flex-flow: row nowrap;

【项目在主轴方向的对齐方式】
注:当容器主轴的尺寸大于各项目尺寸之和,才需要进行对齐方式的设置。

  • 主轴起始位置flex-start对齐
    justify-content: flex-start;

  • 主轴结束位置flex-end对齐
    justify-content: flex-end;

  • 主轴方向居中center
    justify-content: center;

剩余空间 = 容器的尺寸 - 项目尺寸之和.

  • 两端对齐,即第一个项目在容器的起始位置,最后一个项目在容器的结束位置。 每个项目之间的距离,是剩余空间除以(项目个数-1)
    justify-content: space-between;
  • 分散对齐中每个项目左右距离的计算公式: (剩余空间 / 项目个数)/2得到的结果,就是每个项目的左右距离。
    justify-content: space-around;
  • 每个项目之间的距离相同,即平分剩余空间
    justify-content: space-evenly;

【项目在交叉轴方向的对齐方式(一根主轴)】

注:当容器交叉的尺寸大于各项目尺寸之和,才需要进行对齐方式的设置。

  • 交叉轴起始位置flex-start对齐
    align-items: flex-start;

  • 交叉轴结束位置flex-end对齐
    align-items: flex-end;

  • 交叉轴居中对齐
    align-items: center;

  • 交叉轴基线对齐
    align-items: baseline;

图片来源https://css-tricks.com/snippets/css/a-guide-to-flexbox/#flexbox-basics

【项目在开通换行后,在交叉轴方向的对齐方式(多根主轴)】

注:当容器交叉的尺寸大于各项目尺寸之和,才需要进行对齐方式的设置。

        flex-wrap: wrap;
        align-content: flex-start;        
        align-content: flex-end;        
        align-content: center;

在这里插入图片描述
在这里插入图片描述

参考文章:A Complete Guide to Flexbox

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值