flex:1到底是什么

一、子项默认值 flex: 0 1 auto,表现如下。

  • 子项宽度和 < 父元素宽时, 不占剩余空间
<body>
  <div class="wrap">
    <div class="lf son">所发生的方式得分</div>
    <div class="rt son">sdfs我是</div>
  </div>
</body>
<style>
  .wrap {
    display: flex;
    border: 5px black solid;
    width: 300px;
  }
  .lf {
    background-color: lightgreen;
  }
  .rt {
    background-color: orange;
  }
</style>

在这里插入图片描述

  • 子项宽度和 > 父元素宽时,在各自原宽度上按1:1系数缩放
<body>
  <div class="wrap">
    <div class="lf son">所发生的方式得分 超长超长超长超长超长超长超长超长</div>
    <div class="rt son">sdfs我是</div>
  </div>
</body>
<style>
  .wrap {
    display: flex;
    border: 5px black solid;
    width: 300px;
  }
  .lf {
    background-color: lightgreen;
  }
  .rt {
    background-color: orange;
  }
</style>

在这里插入图片描述

二、子项主动设置 flex: 1 1 auto

在css中加上如下代码

.son {
	flex: 1 1 auto;
}
  • 不超宽时,在各自原宽度基础上按1:1占剩余空间
    在这里插入图片描述

  • 超宽时,在各自原宽度上按1:1系数缩放
    在这里插入图片描述

三、子项主动设置 flex: 1

在css中加上如下代码

.son {
	flex: 1;
}
  • 不超宽时,等分
    在这里插入图片描述

  • 超宽时,等分
    在这里插入图片描述

四、子项主动设置 flex: 1 1 20px(随便数值)flex: 1 1 30%(随便百分比)

  • 不超宽时,等分
    在这里插入图片描述

  • 超宽时,等分
    在这里插入图片描述

结论:

  1. 子项的flex: 1不是flex: 1 1 auto的缩写
  2. flex:1的作用可以达到等分空间,不论子项原始宽度是多少,通过上述可发现关键在于flex-basis值引起的等分。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值