【发布时间】:2016-06-15 00:03:15
【问题描述】:
我有一个包含两个弹性项目的弹性容器:
<div class="container">
<div class="left">Left</div>
<div class="right">Right</div>
</div>
如果小于 100 像素,则项目浮动直到容器的可用空间
.container {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
outline: 1px solid black;
}
.left {
min-width: 40px;
flex-grow: 1;
}
.right {
min-width: 60px;
flex-grow: 1;
}
现在,我使用 display:inline-block: 向左侧项目添加一些元素:
<div class="floater"></div>
<div class="floater"></div>
<div class="floater"></div>
<div class="floater"></div>
.floater {
width: 15px;
height: 10px;
display: inline-block;
}
但是现在,浮动元素会导致 flex 项目换行。
编辑:我试图实现的目标:
-
.container宽度.right低于.left -
.container宽度 >= 100px =>.right和.left并排 -
.left的内容不影响left的宽度
所以,我只希望 .left 和 .right 包裹在小的 .containers 上(即如果窗口/浏览器很小)。
我创建了一个fiddle,其中包含一个 100 像素的容器来演示问题。
谢谢。
【问题讨论】:
-
其实我没有理解预期的输出。即使宽度增加然后父元素你想要左右并排?
-
我希望浮动项目在影响弹性项目之前进行包装。对于小提琴,这意味着 flex 项目与 40px 和 60px 保持在一条线上,并且内部浮动项目更早包裹。
-
类似的东西。 jsfiddle.net/vf9utps1/1?