html - 两行或多行显示柔性

标签 html css flexbox

我想让我自己的元素选项卡创建 4 个 div 并给它们 display:flexalign-items:center一切正常,但我想制作例如 12 div 和 3 列,所以第一列将是 4 div 第二个 4 和第三个 4

#projects #projects {
    display: flex;
    align-items: center;
    margin-top:15px;
    justify-content: center;
}
#projects div{
    width:200px;
    height:170px;
    background: red;
    display: inline-block;
    margin:0 auto;
}
<div id="projects">
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <!-- I want 8 more divs but when I add it they are all in one column -->
</div>

最佳答案

您可以通过调整 flex 元素的宽度来控制列数

结果

#projects {
  display: flex;
  flex-wrap: wrap; /* row wrapping*/
  align-items: center;
  margin-top: 15px;
  justify-content: center;
}

#projects div {
  width: calc((100% - 40px) / 4); /* 4 items in row (with 40px for margins) */
  height: 170px;
  background: red;
  display: inline-block;
  margin: 5px;
  border: 1px solid #fff;
  box-sizing: border-box;
}
<div id="projects">
  <div>lorem</div>
  <div>lorem</div>
  <div>lorem</div>
  <div>lorem</div>
  <div>lorem</div>
  <div>lorem</div>
  <div>lorem</div>
  <div>lorem</div>
  <div>lorem</div>
  <div>lorem</div>
  <div>lorem</div>
  <div>lorem</div>
</div>

关于html - 两行或多行显示柔性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57841646/

相关文章:

html - 我的页脚在哪里

html - 像图像中那样在文本下方添加水平线?

html - 并非所有表单输入都适合卡片

html - 在手机上嵌入太小(bandcamp)

HTML5 视频 如何通过单击由 onended 制作的测试来重播视频?

javascript - 加载 YouTube 评论后火狐插件自动调用 JavaScript

javascript - flex 元素不包装在列方向 flex 盒中

CSS居中给出不同的结果

css - 如何使用 CSS flex 从父 DIV 到子 DIV 获得 100% 高度

html - 如何使 float 列表居中?