【CSS】flex弹性布局(伸缩布局)

本文详细介绍了Flex布局的基础概念及使用方法,包括如何通过设置父盒子的display属性为flex来实现子盒子的灵活排列,并深入探讨了各种父级和子级属性如flex-direction、justify-content等的功能与应用场景。
摘要由CSDN通过智能技术生成

1 flex布局

通过给父盒子添加flex属性,来控制子盒子的位置和排列方式

在父盒子:

display:flex

设置了flex后float就失效了,但是定位仍然可以使用。

2 常见父元素属性

2.1 flex-direction

设置主轴方向(子元素是跟着主轴来排列的)

flex-direction 属性指定了弹性子元素在父容器中的位置。

flex-direction:column
参数描述
row(默认)从左到右
row-reverse从右到左
column从上到下
row-column从下到上
2.2 justify-content

设置主轴上的子元素排列方式

内容对齐(justify-content)属性应用在弹性容器上,把弹性项沿着弹性容器的主轴线(main axis)对齐。

参数描述
flex-start(默认值)位于弹性盒子的开头
flex-end位于弹性盒子的末尾
center位于弹性盒子的中间
space-between位于各行之间留有空白的内容中 两边贴死
space-around位于各行之间、之内、之外留有的空白 两边不贴死

FlexStart
FlexEnd
Content
SpaceBetween

SpaceAround

2.3 flex-wrap

子元素是否换行

参数描述
nowrap(默认值)不换行
wrap溢出时换行或者换列
wrap-reverse反转 wrap 排列
2.4 align-items

设置侧轴上的子元素排列方式(单行)

参数描述
stretch(默认值)子元素被拉伸适应容器
center位于容器的中心
flex-start位于开头
flex-end位于结尾
baseline位于容器的基线上
2.5 align-content

设置侧轴上的子元素排列方式(多行),只能用于元素出现换行的情况

参数描述
stretch(默认值)子元素被拉伸适应容器
center位于容器的中心
flex-start位于开头
flex-end位于结尾
space-between位于各行之间留有空白的容器
space-around位于各行之前之后之间留有空白的容器
2.6 flex-flow

复合属性
flex-flow:设置主轴方向 是否换行

flex-flow: column wrap;

3 常见子元素属性

3.1 flex

值为数值,默认是0,定义子元素分配”剩余空间“,用flex来表示占多少份

剩余空间只指排除有宽度的盒子占的空间,其余的空间就叫剩余空间

flex:0(1、2、3...)

flex: flex-grow flex-shrink flex-basis|auto|initial|inherit;

3.2 align-self

自己在侧轴上的排列方式

参数描述
auto(默认值)元素继承它的父容器align-items属性 如果没有父容器则为stretch 拉伸
​stretch元素被拉伸适应容器
center元素位于容器的中心
flex-start元素位于容器的开头
​flex-end元素位于容器的结尾
3.3 order

定义元素的排列顺序,数字(默认是0)(可以为负数),数值越小,排列越靠前

3.4 flex-grow

用于设置或检索弹性盒的扩展比率

  • number 默认是0
  • 设置为2的话相当于占两个元素的大小
3.5 flex-shrink

用于设置或检索弹性盒的收缩比率

  • number 默认值是1
3.6 flex-basis

用于设置或检索弹性盒伸缩基准值

  • auto 默认值
  • ​number 可以设置长度或者百分比
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

IMSI

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

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

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

打赏作者

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

抵扣说明:

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

余额充值