我正在使用JavaScript在我的网页上动态调整透明.gif的大小。原始图像大小约为200x200像素,通常会调整到600x600到800x800之间。在IE8和FF3中,调整大小的图像会产生一个漂亮的渐变效果,其中的颜色似乎被拉伸了。但是,在较旧的浏览器中,如IE7和FF2,调整大小的图像不会显示渐变,而只是显示相同颜色的块。显然,浏览器中内置了一些东西导致了这种情况,但是我很好奇是否有一种方法可以在不改变原始图像的情况下解决这个问题。
发布于 2009-08-21 15:10:13
没有。老的浏览器只是获取图像中的像素,然后根据你给图像的新大小将它们相乘。
较新的浏览器似乎有更高级的图像渲染和抗锯齿等功能,但较旧的浏览器就是不能做到这一点。如果你想让图像在任何尺寸下都看起来很好,请尽可能取最大的尺寸,然后在需要的时候让它缩小。放大一个小图片会看起来很丑陋,特别是在老的浏览器中,而且你也无能为力。
发布于 2009-08-21 15:08:56
如果你只是使用它作为渐变,为什么不在Photoshop/Gimp中创建一个新的,它的分辨率符合你的需要。从长远来看,这将是非常简单的,然后尝试让一个放大的图像在所有浏览器中正确显示。
发布于 2009-08-21 15:10:58
如果你在你的img css样式中添加"-ms-interpolation-mode: bicubic ;“,看起来IE7支持双立方。我自己还没有试过,我想知道它是在gif上工作,还是只在真彩色图像上工作。
https://stackoverflow.com/questions/1312528
复制相似问题