首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Flexbox,按列包装项目

Flexbox,按列包装项目
EN

Stack Overflow用户
提问于 2018-12-06 13:08:35
回答 2查看 195关注 0票数 0

我试图控制包含在带有柔性盒功能的包装中的一些块的位置。以下是我最后想要的:

这是我想要使用的标记。我不想改变它,并且用CSS直观地组织我的盒子:

代码语言:javascript
复制
<div class="wrapper">
  <div class="list-1">
    Liste 1
  </div>
  <div class="list-2">
    Liste 2
  </div>
  <div class="list-3">
    Liste 3
  </div>
</div>

我尝试过多种方法,但都不起作用。下面是我所提供的最接近的东西,但列表3只在列表2也开始时才开始:

代码语言:javascript
复制
.wrapper {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
div[class^="list-"] {
  text-align: center;
}
.list-1 {
  background: red;
  flex-basis: 80%;
  line-height: 50px;
}
.list-2 {
  background: pink;
  flex-basis: 80%;
  line-height: 50px;
}
.list-3 {
  background: green;
  flex-basis: 20%;
  line-height: 100px;
}
代码语言:javascript
复制
<div class="wrapper">
  <div class="list-1">
    Liste 1
  </div>
  <div class="list-2">
    Liste 2
  </div>
  <div class="list-3">
    Liste 3
  </div>
</div>

甚至有可能吗?谢谢你的帮助。

EN

回答 2

Stack Overflow用户

发布于 2018-12-06 13:16:32

试试这段代码

div添加到first and second list并使用flex-basis:80% for new div

我加了课

代码语言:javascript
复制
.list {
  flex-basis: 80%;
}

代码语言:javascript
复制
.wrapper {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

div[class^="list-"] {
  text-align: center;
}

.list-1 {
  background: red;
  flex-basis: 80%;
  line-height: 50px;
}

.list-2 {
  background: pink;
  flex-basis: 80%;
  line-height: 50px;
}

.list-3 {
  background: green;
  flex-basis: 20%;
  line-height: 100px;
}

.list {
  flex-basis: 80%;
}
代码语言:javascript
复制
<div class="wrapper">
  <div class="list">
    <div class="list-1">
      Liste 1
    </div>
    <div class="list-2">
      Liste 2
    </div>
  </div>
  <div class="list-3">
    Liste 3
  </div>
</div>

票数 1
EN

Stack Overflow用户

发布于 2018-12-06 13:17:53

代码语言:javascript
复制
.wrapper {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch; /* this is for the children of flex to be of equal height. */
}
div[class^="list-"] {
  text-align: center;
}
.list-1 {
  background: red;
  line-height: 200px;
  height:200px;
}
.list-2 {
  background: pink;
  line-height: 100px;
  height:100px;
}
.list-3 {
  background: green;
  flex-basis: 20%;
  /* following 3 codes is for centered the liste3. deletable */
  display:flex;
  align-items:center;
  justify-content:center;
}

.column {
  display:flex;
  flex-direction:column;
  flex:4;
}
代码语言:javascript
复制
 <div class="wrapper">
   <div class="column">
  <div class="list-1">
    Liste 1
  </div>
  <div class="list-2">
    Liste 2
  </div>
   </div>
  <div class="list-3">
    Liste 3
  </div>
</div>

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

https://stackoverflow.com/questions/53652186

复制
相关文章

相似问题

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