使用flexbox时,如何使图像停留在特定的行上



我正在尝试做这个响应图像网格(https://www.w3schools.com/howto/howto_css_image_grid_responsive.asp),但我没有在一行上有四列,而是有三列,第四列跳到下一行。见图:3列而不是4列

调整窗口大小时,我没有在一行上有两列,而是有一列。见图:1列而不是2列

可能是什么问题?

<div class="row">
<div class="column">
<img src="./japan1.jpg" alt="">
<img src="./japan2.jpg" alt="">
<img src="./japan3.jpg" alt="">
</div>
<div class="column">
<img src="./japan1.jpg" alt="">
<img src="./japan3.jpg" alt="">
<img src="./japan2.jpg" alt="">
</div>
<div class="column">
<img src="./japan3.jpg" alt="">
<img src="./japan2.jpg" alt="">
<img src="./japan1.jpg" alt="">
</div>
<div class="column">
<img src="./japan2.jpg" alt="">
<img src="./japan3.jpg" alt="">
<img src="./japan1.jpg" alt="">
</div>
</div>
.row {
display: flex;
flex-wrap: wrap;
padding: 0 4px;
}
.column {
flex: 25%;
max-width: 25%;
padding: 0 4px;
}
.column img {
margin-top: 8px;
vertical-align: middle;
width: 100%;
}
@media screen and (max-width: 800px) {
.column {
flex: 50%;
max-width: 50%;
}
}
@media screen and (max-width: 600px) {
.column {
flex: 100%;
max-width: 100%;
}
}

尝试:

.row {
width: 100%;
display: flex;
flex-wrap: wrap
padding: 0 4px;
}
.column{
width: 25%;
padding: 0 4px;
}
.column img {
margin-top: 8px;
vertical-align: middle;
width: 100%;
}
@media screen and (max-width: 800px) {
.column {
width: 50%;
}
}
@media screen and (max-width: 600px) {
.column {
width: 100%;
}
}

最新更新