现在,当鼠标悬停在不同的div上时,我发生了多个fadeIn()和fadeOut()事件。 div中淡入淡出的文本看起来非常像素化,直到fadeIn事件结束后,它会“弹出”成更平滑的文本。
我很想知道是否有可能告诉div在实际淡入之前平滑字体,或者我只能通过使div成为图像来实现这种效果?
的维恩图答案 0 :(得分:3)
这曾经是一个更广泛的问题,但它仍然是IE的问题。你可以采取一些措施来解决这个问题。首先,确保您的淡化元素具有背景。
更大的问题是IE如何通过其不透明度过滤器呈现文本呈现。除了明显的抗锯齿外,字体形状实际上也可以发生相当大的变化。解决方案是将IE的不透明度滤镜预应用于99%的元素。这基本上是不透明的,但它确保元素在jQuery效果期间一致地呈现。
在Ivan的jsfiddle的基础上,这个展示了背景对淡化文本的影响(在IE8中测试):http://jsfiddle.net/joemaller/WLjXW/
密钥是这样的css规则:
#sometext {
background: #fff;
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=99)";
filter: alpha(opacity=99);
}
类似的问题:ie problem with fading in text
有关IE不透明度规则的更多信息:http://www.quirksmode.org/css/opacity.html