Zurb Foundation:区块网格刷新

Zurb Foundation: Block Grid refresh

假设我在 3 列的 Foundation "Block Grid" 中有 10 个块(这些块在块网格中等距分布)。这给了我 3 行 3 个块和 1 行一个块。

如果我动态添加一个 class 和 display:none 到,比方说,第一个块我会得到的仍然是相同的 4 行,在块编号 1 的位置有一个洞。

有没有办法强制它重新排列方块,就好像它最初是从 9 开始的那样,在那里你会得到 3 行,每行 3 个方块?

编辑:

在我最初 post 之后不久,我想到进行测试,它看起来像是 Block Grid 中的一个错误:我在 LI 中包含了一个 display:none class在 UL 中,从一开始就由 HTML 代码中的 Block Grid 控制,果然不应该显示的块会影响布局!

看起来 Foundation 计算了在 UL 中编码的 LI,而不考虑它们的显示属性。在上面的示例中,如果我将第一个块 (LI) 设置为 display:none,我仍然会得到 4 行,其中第一行仅显示 2 个块!

进一步搜索后,我发现 Foundation 将 clear:both 应用于 Block Grid 中的所有第 n+1 个元素,而不考虑元素的可见性。但是,如果网格中的所有元素大小相同,则清除不会改变任何内容。

就我而言,幸运的是,所有元素的大小都相同,因此通过从 CSS 中删除 clear:both(或用 clear:none !important; 覆盖它)解决了我的问题。但是,如果元素的大小不同,这不是解决方案。我还发现 this 这实际上是同一个问题。