美文网首页
flex: 1是哪些属性的缩写?(学习笔记)

flex: 1是哪些属性的缩写?(学习笔记)

作者: kevision | 来源:发表于2024-03-01 13:55 被阅读0次

flex:1 是 flex-grow: 1; flex-shrink: 1;flex-basis: 0% 的缩写。

解析下flex-grow


flex-grow是将剩余的空间(子元素宽度之和小于父元素宽度的差值),根据flex-grow的值平分,然后加到flex-basis上。

<div id="content">
  <div class="box">A</div>
  <div class="box">B</div>
  <div class="box1">C</div>
  <div class="box1">D</div>
</div>
#content {
  display: flex;
  width: 500px;
}
#content div {
  flex-basis: 60px;
}
.box {
  flex-grow: 1;
}
.box1 {
  flex-grow: 4;
}

父元素的宽度是500px,子元素的flex-basis加起来是240px,父容器分完以后剩下260px,ABCD的flex-grow加起来10,那么每一份是26px,最终AB是60px + 26px = 86px,CD是60px + 26px * 4 = 164px。

解释下flex-shrink


flex-shrink是将多出的空间(子元素宽度之和大于父元素宽度的差值),根据flex-shrink的值平分,然后flex-basis减去分到的值。

<div id="content">
  <div class="box">A</div>
  <div class="box">B</div>
  <div class="box1">C</div>
  <div class="box1">D</div>
</div>
#content {
  display: flex;
  width: 500px;
}
#content div {
  flex-basis: 150px;
}
.box {
  flex-shrink: 1;
}
.box1 {
  flex-shrink: 4;
}

子元素的flex-basis加起来是600px,而父容器只有500px,那么少的100px,就得从ABCD往出扣,ABCD的flex-shrink加起来是10,那么每一份就是10px,最终AB是150px - 10px = 140px,CD是150px - 10px * 4 = 110px。

参考文章:https://juejin.cn/post/7339042131467747368?utm_source=gold_browser_extension

相关文章

  • 常用CSS flex样式类

    /flex .f-属性名缩写-属性值缩写/.flex {display: flex;}.inflex {displ...

  • flex深度布局-子元素的尺寸计算

    flex的属性的值是 flex-grow, flex-shrink, flex-basis的缩写 flex的属性的...

  • css拾遗(8)-flex:1

    flex:1 flex:1是三个属性的缩写。 如果有两列div: width遇到flex-basis无效 flex...

  • CSS Flex布局

    欢迎阅读阮一峰老师的原文,本篇为学习笔记 1. Flex布局 Flex是Flexible Box 的缩写,意为弹性...

  • wxss的学习记录

    1.flex属性小记 (1)小程序最主要的布局是通过flex来进行的,flex是flexible box的缩写,意...

  • CSS3:由flex:1引发出来的问题

    一,flex是flex-grow,flex-shrink,flex-basis项目属性的缩写 flex-grow:...

  • 【CSS】Flex弹性布局

    Flex是 Flexible Box 的缩写,弹性布局 容器的属性 flex-direction:横轴方向(row...

  • 一文搞懂flex:0,1,auto,none

    首先,flex属性其实是一种简写,是flex-grow,flex-shrink和flex-basis的缩写形式。默...

  • CSS flex 布局

    内容参考pink老师笔记。 一、flex布局原理 flex 是 flexible Box 的缩写,意为“弹性布局”...

  • 【flex:1】

    flex 是 flex-grow、flex-shrink、flex-basis的缩写。默认值: flex: 0 1...

网友评论

      本文标题:flex: 1是哪些属性的缩写?(学习笔记)

      本文链接:https://www.haomeiwen.com/subject/ahdczdtx.html