首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >双列弹性框布局

双列弹性框布局
EN

Stack Overflow用户
提问于 2017-05-29 20:09:24
回答 1查看 45.8K关注 0票数 23

我需要创建布局,其中将包含两列的项目列表。如下所示:

代码语言:javascript
复制
.container {
  border: 1px solid red;
  height: 300px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.item {
  border: 1px dashed blue;
  height: 50px;
}
代码语言:javascript
复制
<div class="container">
  <div class="item">1</div>
  <div class="item">2</div>
  <div class="item">3</div>
  <div class="item">4</div>
  <div class="item">5</div>
  <div class="item">6</div>
  <div class="item">7</div>
  <div class="item">8</div>
</div>

但是这样的布局有一个问题。如果只有一个项目-它将采取全宽。即使只有几个项目,我也需要保留列。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-05-29 20:23:11

您可以设置项目的最大宽度,等于50%。这将使它的宽度几乎保持不变。我说几乎是因为你也设置了边界。

为了保持宽度完全相同,你还必须为项目设置box- same : border-box。

因此,您的代码将是:

代码语言:javascript
复制
.item {
  border: 1px dashed blue;
  height: 50px;
  box-sizing: border-box;
  max-width: 50%;
}

代码语言:javascript
复制
.container {
  border: 1px solid red;
  height: 300px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.item {
  border: 1px dashed blue;
  height: 50px;
  box-sizing: border-box;
  max-width: 50%;
}
代码语言:javascript
复制
<div class="container">
  <div class="item">1</div>
  <div class="item">2</div>
  <div class="item">3</div>
  <div class="item">4</div>
  <div class="item">5</div>
  <div class="item">6</div>
  <div class="item">7</div>
  <div class="item">8</div>
</div>

票数 30
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44242141

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档