flex含义

flex含义

1、flex:1原理实际上是三个属性

● flex-grow: 1 用来增大盒子

比如:当父盒子的宽度大于子盒子的宽度,父盒子的剩余空间可以利用flex-grow来设置子盒子增大的占比

● flex-shrink: 1 用来缩小盒子

用来设置子盒子超过父盒子的宽度后,超出部分进行缩小的取值比例

● flex-basis: 0% 覆盖width

用来设置盒子的基准宽度,并且basis和width同时存在,basis会把width干掉

2、常见的flex 缩写

● flex:1 => flex:1 1 0;
● flex:none => flex: 0 0 auto
● flex:1 =>flex: 1 1 0%
● flex: auto => flex: 1 1 auto

3、flex细化

3.1、flex是缩写

flex是flex-grow, flex-shrink 和 flex-basis的缩写,flex属性值可以只指定一个属性的值,而另外的属性值采用各自在flex属性中的的初始值,但是有一点要注意的是:flex属性中flex-grow和flex-basis的初始值和它们原始的默认值不同,至于为什么不同,mdn中有明确的说过这样的设计是为了让「flex」缩写在最常见的情景下比较好用。

3.2、flex中对应各属性的初始值

  • flex-grow 用于设置各item项按对应比例划分剩余空间,若flex中没有指定flex-grow,则相当于设置了flex-grow:1
  • flex-shrink 用于设置item的总和超出容器空间时,各item的收缩比例,若flex中没有指定flex-shrink,则等同于设置了flex-shrink:1
  • flex-basis 用于设置各item项的伸缩基准值,可以取值为长度或百分比,如果flex中省略了该属性,则相当于设置了flex-basis:0

3.2、flex的不同取值

  • 当flex为none时,等同于flex: 0 0 auto;
  • 当flex为auto时,等同于flex: 1 1 auto;
  • flex值为一个非负数字:当flex取值为一个数字,则该数字是设置的flex-grow值,其它两个属性用初始值,如 flex:1 时,等同于flex : 1 1 0%
  • flex值为两个非负数字:当flex取值为2个数字时,相当于设置的flex-grow和flex-shrink值,flex-basis取值为初始值,如flex:1 0 时,等同于flex: 1 0 0%
  • 当 flex 取值为1个数字和1个长度或百分比时,设置的是 flex-grow 和 flex-basis 的值,flex-shrink 值是初始值,如 flex: 1 20%,等同于 flex : 1 1 20%
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

LD2721

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

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

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

打赏作者

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

抵扣说明:

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

余额充值