我有这些浮动的 DIV 框,它们可以完美地工作。:)
但是当文本扩展更多时,我遇到了这个浮动问题。
我如何填补那个破坏我设计的丑陋空间?
发生这种情况是因为浮动元素脱离了正常的 HTML 文档流,并且当某些元素比其兄弟元素高时默认为这种行为。
解决这个问题的一种方法是使用固定高度的元素。如果它们都具有相同的高度,则不会发生此问题。然而,这并不总是实用的,尤其是对于动态内容。
另一种解决方案是使用 JavaScript。看看Masonry jQuery 插件;它可以做你需要的。
我会使用不依赖 jQuery 的 Vanilla Masonry 插件;http://vanilla-masonry.desandro.com/
对此的非 JS 解决方案是在这些盒子上使用display: inline-block; vertical-align: top;
而不是使用。float: left
这将使它们都并排坐好并排成一排,尽管在它们旁边有一个更高的盒子下面会有小间隙。inline-block
至少会阻止您看到的浮标。