问题:
如果flex布局中justify-content设置为space-between、space-evenly或者space-around最后一排与上一排数量不等,自动向两端排列问题的问题
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body>
<div class="container">
<span class="item">1</span>
<span class="item">1</span>
<span class="item">1</span>
<span class="item">1</span>
<span class="item">1</span>
<span class="item">1</span>
<span class="item">1</span>
<span class="item">1</span>
<span class="item">1</span>
<span class="item">1</span>
<span class="item">1</span>
</div>
<style>
.container {
border: 1px solid black;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}
.item {
margin: 10px 10px 0 0;
display: inline-block;
width: 25%;
height: 100px;
background-color: aqua;
}
</style>
</body>
</html>
解决办法(1):矩阵布局即铺盒子
如果一行想添加的子元素为n个
那么在最后一行加入(n-2)个span,再给span添加宽度就可以解决该问题
解决办法2: 父级添加after伪类法,同样可以解决flex布局最后一排数量不够自动向两端排列问题