【发布时间】:2013-02-22 02:08:30
【问题描述】:
我有以下html:
<div class="main_container">
<div class="sub_container">
<div class="floating">wookie1</div>
...
<div class="floating">wookie5</div>
</div>
</div>
把它想象成一个图片库。
main_container 的大小不固定,设置为用户分辨率的百分比。 我希望 sub_container 具有浮动 div 总和的确切宽度。
如果我使用“display:table;”对于 sub_container 和“显示:内联块;”对于浮动 div,它工作正常:
直到列表中有足够的 div,使得宽度的总和大于 main_container 并且它们在下一行中断:
但是,我仍然希望子容器(黄色背景)始终是 div 总和的确切宽度,即使它们分成几行,如下所示:
我已经在 Google 上搜索了几个小时,但无法找到一个优雅的解决方案(如果可能,只能使用 css。)
这是jsfiddle,可以玩这个。
【问题讨论】:
-
我不明白这个问题。 .main_container 有一个固定的宽度,小于里面的小 div 的总和
-
也许我不清楚。我希望 sub_container 始终具有浮动 div 总和的确切宽度,即使 div 的数量中断到另一行
-
但是如果内部浮动 div 的总和大于 .main_container 怎么办?
-
然后他们会换行。但是 sub_container 仍然不需要 100% 宽度。
-
如果在父元素上设置宽度,子容器会占据整个父元素的宽度。这对我来说似乎是一个错误。谁能解释这是否是预期的行为?为什么会这样?