Isotope 重叠项目的问题有据可查,但似乎其他人只是使用图像,他们的问题通过使用$(window).load(function(){ ..... });
或imagesLoaded
插件解决。
我发现所有浏览器都可以正常工作,除了我遇到重叠的 IE8。这个问题只是onload
; 如果我单击任何过滤器,则样式是正确的。但我试过把我的脚本包装进去$(window).load(function(){ ..... });
,但它不起作用!
当我使用 IE 检查器时,Isotope 计算的宽度在 IE8 中似乎是 80px。
这些在 a<ul>
和<li>
's 中定义为 349px。在 Chrome 中,当我使用检查器时,我可以看到它在<li>
元素的内联样式中添加了 379px 的正确宽度(这是 349px 宽度 + 30px 左边距):
position: absolute; left: 0px; top: 0px; -webkit-transform: translate3d(379px, 0px, 0px);
然而,在 IE8 中,它添加了以下内联样式:
left: 299px; top: 0px; position: absolute;
其他 CSS 细节:
- 每个项目的左边距为30px
- 容器
<ul>
的负边距为-30px以使网格平整 - 内边距设置在内部元素上,
<li>
并且为20px - 图像的宽度定义为 75px
我无法弄清楚为什么它会重叠 80px 或如何阻止它!快把我逼疯了。
有什么帮助吗?我想写一个小提琴来展示这一点,但在 jsfiddle 和 IE8 上遇到了困难,即使是 jsfiddle.net/draft/。