首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >调整同一列中的flex项

调整同一列中的flex项
EN

Stack Overflow用户
提问于 2021-03-05 19:46:45
回答 2查看 58关注 0票数 1

我的页面上有一个水平滑块(可滚动),其中包含子卡列表.下面的代码片段运行得非常好。

JSFiddle-1:https://jsfiddle.net/28rnwpqk/

我现在想显示不同大小的卡片,它们是动态的。我对我的容器css做了如下更改,以便在存在空格的情况下将多个卡堆叠在同一列中。

代码语言:javascript
复制
.container {
  ...
  flex-direction: column;
  flex-wrap: wrap;
  ...
}

JSFiddle-2:https://jsfiddle.net/k60zLg74/

这将导致父容器宽度仅设置为第一个滑块项的宽度,即flex方向的bcz : column属性。这样的背景色,滑块卷轴已经停止工作。在不影响容器宽度的情况下实现这一目标的正确方法是什么。我的主要要求是,如果存在空间和卡的大小是不知道预先知道的弯曲项目垂直堆放。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-03-05 20:13:14

CSS网格可以更好地做到这一点:

代码语言:javascript
复制
.viewport {
  width: 600px;
  height: 200px;
  overflow-x: hidden;
}

.container {
  display: inline-grid;
  background-color: DodgerBlue;
  grid-auto-flow:column;
  grid-template-rows:1fr 1fr;
  grid-auto-columns:130px;
  gap: 10px;
  height: 100%;
  min-width:100%;
}

.item {
  box-sizing: border-box;
  background-color: #f1f1f1;
  padding: 20px;
  margin: 10px;
  font-size: 30px;
  grid-row:span 2;
}
.item.small {
  grid-row:span 1;
}
代码语言:javascript
复制
<div class="viewport">
  <div class="container">
    <div class="item">1</div>
    <div class="item">2</div>
    <div class="item small">3</div>
    <div class="item small">4</div>
    <div class="item">5</div>
    <div class="item">6</div>
    <div class="item">7</div>
    <div class="item">8</div>
  </div>
</div>

票数 0
EN

Stack Overflow用户

发布于 2021-03-05 19:54:55

width: max_content;设置限制容器的宽度。如果删除该属性,您的整个容器将如预期的那样具有蓝色背景:

代码语言:javascript
复制
.container {
  display: flex;
  background-color: DodgerBlue;
  flex-direction: column;
  flex-wrap: wrap;
  gap: 10px;
  height: 200px;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66498757

复制
相关文章

相似问题

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