例如,如果我制作了四个绝对定位为50%宽度和50%高度的图像块,则Internet Explorer中的结果如下所示:
http://img716.imageshack.us/img716/8376/96774641.png
如预期的那样,图像紧挨着彼此放置。
但Chrome中的相同代码会产生这样的结果:
http://img560.imageshack.us/img560/7976/chrome.png
图像缩小了一点,为中间的间隔腾出空间。
我的风格已包括:
border-style: none;
border-width: 0;
padding: 0;
margin: 0;
...那么为什么Chrome会将我的图片与其他图像区分开来,如何在不改变其他首先正确呈现的浏览器的显示的情况下修复它?
编辑: <link removed>
请注意,实际页面要复杂得多,有超过1,000 <img>
个元素
它将在任何非硬件加速的浏览器中缓慢加载
我已经确认FireFox的渲染方式与IE8相同,图像旁边的图像应该是相同的。
答案 0 :(得分:8)
这可能是一个舍入问题:例如50%
的宽度可能最终为223.5px
。
当您使用固定大小的图像时,为什么不以像素为单位指定位置?
答案 1 :(得分:4)
您使用的是CSS重置吗?浏览器默认样式可能会导致恼人的问题,例如具有不同顶部边距高度的段落或其他布局怪癖。这种特殊情况可能无法通过CSS重置来修复,但它可以消除这种可能性。
可悲的是,用于设置背景图像比例的CSS3选项尚未以任何可靠的方式提供,或者您可以将图像设置为缩放到50%的重复背景图像,这当然没有间隙。很可能在相当长的一段时间内不会出现这种情况。
答案 2 :(得分:3)
您是否尝试使用检查器(右键单击图像,选择检查元素)来跟踪间距的来源?