2

在使用 javascript 幻灯片时,我们在所有版本的 Internet Explorer 浏览器中都有以下奇怪的(嗯...)行为。

你可以在这里看到我的意思http://www.tospirto.net/index.php?ID=photo_gallery&Rec_ID=481

在最后 3 张图像中,有浏览器创建的白线和伪影。
正如我对所有版本的 Internet Explorer 所说的那样,这是正确的。

你以前见过这个吗?
你知道是什么原因造成的吗???

谢谢

4

3 回答 3

1

我可以看到文物 - 奇怪!这是 IE 的 JPEG 渲染算法中的一个已知问题。如果您在 Photoshop 中放大图片,您会看到伪影被限制在编码块内。(请原谅,但我假设您大致了解 JPEG 的编码方式。)

尝试以不同的质量或什至以不同的格式(例如 PNG,尽管这会给您提供更大的文件)对图像进行编码。您可以在此处找到有关如何解决此问题的其他想法:http: //forum.jquery.com/topic/ie-dead-pixels-when-fading-images

于 2010-09-21T15:20:41.103 回答
0

这是过滤器中的一个错误alpha,这就是在 IE 中实现透明淡入淡出的方式(在版本 9 之前,最终支持正确的 CSS opacity)。当直接在图像上使用时,任何具有 RGB 值 2,5,10 (aka #02050A) 的像素都被视为透明的。

这就是例如 1 位透明度的方式。GIF 在alpha过滤器中实现。显然,微软认为这种特殊的颜色很少使用,没有人会注意到。哎呀。

通过将alpha过滤器(或使用它的淡化脚本)放在容器<div>上而不是图像本身上来避免错误。

或者,您可以使用过滤器(与在 IE6 上加载透明 PNG 相同的技巧)来加载图像,或者当您不在淡入淡出中间时AlphaImageLoader去掉过滤器(您仍然会在淡入淡出期间看到错误,但是alpha至少它不会以 100% 出现)。

于 2010-09-21T17:06:36.687 回答
0

好的,经过一番搜索,我发现了问题所在。
该效果被称为瑞士军队图像伪影,您可以在此处找到更多信息:http ://www.dynamicdrive.com/forums/showthread.php?t=34462

探险家的另一个大错误:)

解决方案在参考文章中,例如使用 Photoshop 上的色阶工具去除绝对黑色。使用 Photoshop 中的操作对所有图片进行了批量更改,并且效果很好。

于 2010-09-22T12:07:04.993 回答