假设我有以下标记
<div class="container">
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
</div>
和风格
.item {
width: 100%
}
由于某些原因,我不能改变.item
的宽度我可以通过样式化父容器.container
,使用flexbox或任何其他方式在每行中排列2个项目吗?
3条答案
按热度按时间njthzxwz1#
您可以将
flex: 50%
给孩子div
s,而无需触摸.item
neskvpey2#
下面的解决方案对我有效
样本:https://codepen.io/capynet/pen/WOPBBm
gtlvzcf83#
假设width属性不能改变,我可以想到几个可能的解决方案,第一个是
fit-content
,它的浏览器支持非常差。第二个是use positioning,这是一个同样糟糕的主意,因为它的挑剔本质和在不同屏幕尺寸上失败的可能性。现在最后两个,非常相似,一个是使用两个容器,给予它们
display:inline;
给它们一个有限的宽度,然后用项目填充它们。如果你没有注意到,这本质上是一个2×1的表。最后,你可以做一个2×1的表格,虽然这可能是这里最简单的解决方案,但养成使用表格来放置表单和表格以外的东西的习惯是一个坏主意。然而,这是我将提供给你的一个选项。
祝你好运!