一个div大盒子里面有无数个小的div盒子 我想要一排平均三个小div 但是小div盒子里的内容物过长的话 就可以把后面那个挤到下一行
时间: 2024-03-13 19:46:04 浏览: 107
DIV重叠 CSS让DIV层叠 两个DIV或多个DIV顺序重叠加
您可以使用CSS中的flex布局来实现该需求。您可以将大盒子的display属性设置为flex,并将flex-wrap属性设置为wrap,这样可以使小盒子自动换行。然后,您可以使用flex-basis属性来设置每个小盒子的基础宽度,并使用flex-grow属性来使它们平均分配剩余的空间。以下是一个示例代码:
```html
<div class="container">
<div class="box">内容1</div>
<div class="box">内容2</div>
<div class="box">内容3</div>
<div class="box">内容4</div>
<div class="box">内容5</div>
<div class="box">内容6</div>
<div class="box">内容7</div>
<div class="box">内容8</div>
<div class="box">内容9</div>
</div>
```
```css
.container {
display: flex;
flex-wrap: wrap;
}
.box {
flex-basis: calc(33.33% - 10px);
margin-right: 10px;
margin-bottom: 10px;
}
.box:last-child {
margin-right: 0;
}
@media screen and (max-width: 480px) {
.box {
flex-basis: 100%;
margin-right: 0;
}
}
```
在上面的代码中,我们设置了每个小盒子的基础宽度为33.33%减去10px的右边距,并使用媒体查询在小屏幕设备上将它们的基础宽度设置为100%。此外,我们还设置了一个10px的下边距来创建间隔。
阅读全文