0

Isotope 重叠项目的问题有据可查,但似乎其他人只是使用图像,他们的问题通过使用$(window).load(function(){ ..... });imagesLoaded插件解决。

我发现所有浏览器都可以正常工作,除了我遇到重叠的 IE8。这个问题只是onload; 如果我单击任何过滤器,则样式是正确的。但我试过把我的脚本包装进去$(window).load(function(){ ..... });,但它不起作用!

IE8 中的重叠

当我使用 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/。

4

1 回答 1

0

万一有人偶然发现这个风滚草问题,我最终不得不在项目上使用 % widths 来解决这个问题,因为我的媒体查询导致了这个问题。

实际上,媒体查询问题似乎只发生在 IE8 中,所以我专门针对使用 % 宽度的样式的浏览器。

于 2013-08-15T07:31:12.743 回答