10

我正在尝试使用 CSS 布局解决经典的盒子包装/背包问题。

我想以一种尽量减少元素之间空白的方式排列许多盒子,就像这样;

描述我想要达到的目标的图片
(来源:tydus.net

CSS3 列在这里工作得很好——盒子是按顺序排列的,但是所有的空白都被有效地消耗了。有一个很小的问题 - 盒子是“剪切”的,或者跨越多个列。不能那样做。

我在一些盒子之后使用了经典的 div.clearer,但这没有效果 - 盒子仍然跨越那些 CSS3 列。有一个 column-span CSS 属性,但尚不支持任何浏览器;(

或者,我可以自己定义列并手动排列盒子,但实际上盒子的高度变化非常频繁。

最后一个问题:有没有办法使用纯 CSS 以最小化盒子之间的空白的方式排列盒子?

谢谢!

4

1 回答 1

3

虽然我自己还没有尝试过,但一个可能的答案可能是使用jQuery Masonry 插件。这似乎符合您所说的要求。

在纯 CSS 和 HTML 中执行此操作将非常困难,您可能不得不放弃一些愿望/要求......

于 2012-08-22T15:13:46.130 回答