0

我有一些(未知高度)元素可以使用 进行水平调整float: left;,但如果其中一个元素更高,则在下一行的元素上方有一个空格。我想将该元素移动到其上方的空白处。这是问题的图片:元素上方的空白空间,必须将其移到那里 是否可以在没有 JavaScript 的情况下做到这一点?无论哪种方式,我该怎么做?

4

2 回答 2

1

在没有 JS 的 CSS 中:

  • 你可以让“Fotos”相对于“Contato”垂直对齐display: inline-block(空白有点烦人,如果需要,IE6/7 有一个等价物)

  • 您可以使用假列table或 CSS 表格布局在每条“行”上拥有相等高度的块(与带有,tr和元素的无语义 HTML 表格布局无关td。这里是您选择的元素的布局)

  • 如果您想堆叠尽可能多的块,那么您必须创建 2 列,将它们浮动并用您的块填充它们。这将改变它们在您的 HTML 代码中的顺序,因为它们将从上到下然后从左到右编写(“Fotos”将紧随 HTML 代码中的“Home”之后)

于 2012-09-01T21:46:27.410 回答
0

只需使用javascript!jquery masonry 就是为此而生的!

http://masonry.desandro.com/

于 2012-09-01T21:52:17.763 回答