【CSS】flex: 1; 的意思

Flexbox 布局中,flex: 1; 是一个简写属性,它表示弹性容器中的子元素如何分配可用空间。flex: 1 意味着该元素可以根据剩余的空间进行扩展,占据相应的比例。具体来说,flex: 1;flex-growflex-shrinkflex-basis 这三个属性的简写:

css 复制代码
flex: 1; /* 等同于 */
flex-grow: 1;
flex-shrink: 1;
flex-basis: 0;

1. flex-grow: 1

  • 表示元素可以根据可用空间进行扩展,1 表示该元素在可用空间中的比例。如果父容器有剩余空间,设置了 flex-grow: 1 的元素会平分这些空间。
  • 如果有多个元素设置了 flex-grow,它们将按指定的比例共享可用空间。

2. flex-shrink: 1

  • 表示当父容器空间不足时,元素是否可以缩小。1 表示该元素可以按比例缩小。
  • 如果多个元素都设置了 flex-shrink: 1,当空间不足时,它们会按比例缩小。

3. flex-basis: 0

  • 表示元素在伸展或缩小之前的初始大小。0 意味着元素的初始大小为 0,并且完全依赖 flex-grow 的值来决定最终的大小。

示例:

html 复制代码
<div class="container">
  <div class="box">Box 1</div>
  <div class="box">Box 2</div>
  <div class="box">Box 3</div>
</div>

<style>
  .container {
    display: flex;
  }
  .box {
    flex: 1;
    background-color: #f0f0f0;
    padding: 20px;
    margin: 5px;
  }
</style>
解释:
  • 在这个例子中,.box 元素都设置了 flex: 1;,这意味着它们会均等分配父容器的可用空间。
  • 如果容器有多余的空间,三个 box 会平分这些空间。如果父容器的空间不足,它们也会等比例地缩小。

总结:

  • flex: 1;flex-grow: 1; flex-shrink: 1; flex-basis: 0; 的简写。
  • 它表示元素可以根据容器的剩余空间进行扩展(或缩小),并且在布局中按比例分配空间。
相关推荐
CHANG_THE_WORLD5 分钟前
PDF文档结构分析 一
前端·pdf
东东51621 分钟前
果园预售系统的设计与实现spingboot+vue
前端·javascript·vue.js·spring boot·个人开发
rainbow688922 分钟前
Python学生管理系统:JSON持久化实战
java·前端·python
打小就很皮...26 分钟前
React Router 7 全局路由保护
前端·react.js·router
起风的蛋挞35 分钟前
Matlab提示词语法
前端·javascript·matlab
有味道的男人36 分钟前
1688获得商品类目调取商品榜单
java·前端·spring
txwtech42 分钟前
第20篇esp32s3小智设置横屏
前端·html
Exquisite.1 小时前
企业高性能web服务器---Nginx(2)
服务器·前端·nginx
DFT计算杂谈1 小时前
VASP+PHONOPY+pypolymlpj计算不同温度下声子谱,附批处理脚本
java·前端·数据库·人工智能·python
广州华水科技1 小时前
如何选择合适的单北斗变形监测系统来保障水库安全?
前端