html - 弹性盒项目如何使用其父项的全宽
问题描述
.container {
width: 400px;
border: 2px solid red;
display: flex;
flex-flow: row wrap;
}
.item {
padding: 20px;
border: 1px solid blue;
width: 70px;
}
<div class="container">
<div class=item>Box 1</div>
<div class=item>Box 2</div>
<div class=item>Box 3</div>
<div class=item>Box 4</div>
<div class=item>Box 5</div>
</div>
我的问题是,“Box 1”、“Box 2”、“Box 3”如何使用“容器”类的全宽?而“Box 4”和“Box 5”将从下方排列到上面的“Box 1”和“Box 2”。
解决方案
你有几种方法可以解决它;这里有两种方法:
使用flex-grow
. 如果添加flex-grow: 1
到item
选择器,则每行上的框将占据容器的整个宽度。注意:使用此解决方案,您可能希望确保每行具有相同数量的框,如果您希望这些框显示为统一网格。否则只有一两个框的线将被拉伸以填充容器的宽度。所以记住这一点。
.container {
width: 400px;
border: 2px solid red;
display: flex;
flex-flow: row wrap;
}
.item {
padding: 20px;
border: 1px solid blue;
width: 70px;
flex-grow: 1;
}
第二个选项:添加margin: 0 auto;
到item
选择器,它们将通过居中填充宽度。
.container {
width: 400px;
border: 2px solid red;
display: flex;
flex-flow: row wrap;
}
.item {
padding: 20px;
border: 1px solid blue;
width: 70px;
margin: 0 auto;
}
推荐阅读
- php - 键入'_InternalLinkedHashMap
' 不是类型 'FutureOr 的子类型 - >'
- python - 引号分割线在子引号中分割 '\n'
- python - 字符串的后半部分大写
- api - REST API - 一对零或一关联
- node.js - Firebase Cloudfirestore 更新集合中的元素
- node.js - 查找和更新数组 Mongoose 中的单个元素
- c++ - DetourDetach() 抛出 ERROR_INVALID_BLOCK 错误
- android - Kotlin 如何将额外的 Activity 放到 Service
- flutter - 使用 BottomNavigation 栏时如何实现每个屏幕都有 Scaffold 小部件?
- java - 线程“main”java.lang.StringIndexOutOfBoundsException 中的异常:字符串索引超出范围:Pig Latin 为 -1