1

我正在使用 jQuery 砌体并面临一个问题,框之间的边距(垂直)有时会有所不同。设置边距正确的唯一方法是使用浏览器控制台重新加载砌体

jQuery( ... ).masonry( 'reload' ); 

初始化砌体后,某些东西导致高度变化,我找不到它(仅静态内容,不涉及脚本)..

编辑:此问题与从远程目标加载的外部字体有关。

谢谢!

4

2 回答 2

1

好吧,为了其他 SO 用户的利益,我认为问题可能会更好地公开回答。

您是否使用来自 fonts.com、typekit.com 或 google.com/webfonts 的字体?如果您使用标准字体测试您的页面,然后一切正常,则可能是您的 webfonts 加载得很晚,这会阻止 Masonry 计算出每个砖块的正确垂直尺寸,从而弄乱垂直布局。如果您说重新加载后它看起来正确,则可能意味着到那时所有内容和外部代码(文本、图像、字体、脚本等)都已加载,因此重新加载后一切看起来都符合预期。

于 2012-09-09T15:28:01.230 回答
0

感谢您的回答,经过搜索我发现这个问题在 Masonry 网站https://github.com/desandro/masonry/issues/3中有描述

解决方案:使用WebFont Loader并在字体加载回调后重新加载砌体

谢谢

于 2012-09-09T16:03:47.113 回答