IE8中的透明PNG周围的黑色边框

时间:2011-08-06 09:11:40

标签: jquery internet-explorer-8 png fadein fadeout

我遇到了一些问题,在IE8的jquery滑块周围有一个黑色的小边框。它在所有浏览器(包括IE6和7)中都能正常工作,但在IE8中却没有。

你可以在这里看到它:http://www.socialogika.com/tabs/goliath/collection/

我已经尝试过在stackoveflow上找到的几个修复程序,但它们似乎都没有解决方案(还有)...从24开始转向PNG-8修复了Ie6& 7,但仍然存在8个问题

有人能指出我的工作解决方案吗?

2 个答案:

答案 0 :(得分:1)

如果这有帮助,请告诉我:http://channel9.msdn.com/forums/TechOff/257324-IE7-alpha-transparent-PNG--opacity/

  

我已经对IE7 png进行了大量关于不透明度问题的研究,并使用了两种解决方法,涵盖了大多数,但遗憾的是并非所有场景。

     

在这个帖子中已经提到过第一个,它针对所需的不同不透明度具有不同的图像文件。当您只想显示状态时,此方法适用于鼠标悬停和鼠标悬停效果,但是当您想要为不透明度设置动画时,这种方法很可能无用。

     

第二种方法大部分时间都可以使用,但这取决于你的pagelayout和设计。要伪造div的不透明度动画,您可以在想要显示不透明度变化的真实div上放置一个虚拟的第二个div。第二个div应该绝对定位并采用背景div的宽度和高度。根据您的页面设计,您可以给它一个背景颜色(最适合真实背景图像png),然后根据您要查找的效果为该div上的不透明度设置动画淡入或淡出。

     

因为无论如何都会使用javascript作为不透明度动画,所以在需要效果时创建并插入新div很简单,一旦完成就将其删除。这样,实际的div内容仍然可以被网站访问者复制,粘贴或右键点击。

另外,或许可以尝试确认我的预感是不透明度会导致黑色边框显示:禁用所有淡入淡出效果并让我知道图像是否正确渲染。

答案 1 :(得分:0)

嗯...尝试使用

.fadeTo()

DEMO

无论如何,您可以使用这个小修补程序:

$('#mages img').css({background: '#EDE7DE'});

或者为IE创建一个if语句,您只需将.fix添加到所需的图像即可。 .fix位于CSS文件中,为图像添加所需颜色的背景。

if ($.browser.msie && $.browser.version <= 8 )
{
$('#gallery img').addClass('fix');
}