Javascript 为什么在IE中alpha动画之后图形会有难看的黑色边框?
打开时将显示一个奇特的jQuery不透明动画。目前,它在所有浏览器中都能工作,但在IE中,所有文本和alpha图像都留下了难看的黑色边框,这使得文本实际上无法阅读 我是否可以运行一些聪明的javascript命令来刷新/更新图形? 还有别的办法吗 我的问题完全是css和javascript相关的,所以所有的源代码都可以在下面的链接中找到 谢谢你的帮助Javascript 为什么在IE中alpha动画之后图形会有难看的黑色边框?,javascript,jquery,css,Javascript,Jquery,Css,打开时将显示一个奇特的jQuery不透明动画。目前,它在所有浏览器中都能工作,但在IE中,所有文本和alpha图像都留下了难看的黑色边框,这使得文本实际上无法阅读 我是否可以运行一些聪明的javascript命令来刷新/更新图形? 还有别的办法吗 我的问题完全是css和javascript相关的,所以所有的源代码都可以在下面的链接中找到 谢谢你的帮助 这个问题可能有你想要的答案: 根据@darkoz的回答: 解决这个问题的方法是将png嵌套在容器中,然后淡入容器。有点像这样: 在涉及不透明度的
这个问题可能有你想要的答案: 根据@darkoz的回答: 解决这个问题的方法是将png嵌套在容器中,然后淡入容器。有点像这样:
在涉及不透明度的动画之后,您需要清除不透明度值(返回默认值为无值),以修复IE中损坏的抗锯齿。在动画完成后(例如,在回调中),在相关部分尝试此jQuery:
这段jQuery代码在处理IE中的不透明度问题时对我很有用
$(function() {
if (jQuery.browser.msie)
$('img[src$=.png]').each(function() {
this.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src="+this.src+",sizingMethod='scale')";
});
})
缺点:有时应用纯色背景色是不可接受的解决方案。这通常是给我的。因此动画在
过滤器中设置值为1
,内部馈送到IE,你只需通过opacity,
杀死1
,
使其成为普通的、未触及的,这将解决黑色故障?重置不透明度没有任何作用,但重新设置过滤器成功了。谢谢你的回复!如果你编辑你的帖子,我会把它标记为正确答案。
$('.item').css('filter','');
$(function() {
if (jQuery.browser.msie)
$('img[src$=.png]').each(function() {
this.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src="+this.src+",sizingMethod='scale')";
});
})
.container img {
background-color: white;
}
$('.holder-thumbs li a img').each(function() {
$(this).css('background-image', $(this).attr('src'));
});