2012-07-10 56 views
0

当鼠标悬停在不同的div上时,现在有多个fadeIn()和fadeOut()事件发生。在淡入div中的文本看起来非常像素化,直到fadeIn事件结束之后,它才会“弹出”成为更流畅的文本。使用jQuery淡入淡出的字体反锯齿

我不知道是否有可能告诉div在实际淡入之前平滑字体,还是只能通过使div成为图像来实现这种效果?

退房在http://www.daemondeveloper.com

+1

我没有看到任何“像素化”。 http://jsfiddle.net/g2k8E/。你使用什么浏览器和屏幕分辨率? – Ivan 2012-07-10 17:55:50

+0

添加了一点暂停:http://jsfiddle.net/g2k8E/1/ Safari/Mac似乎使用“更便宜”,更薄的看反锯齿动画。 – biziclop 2012-07-10 19:54:54

+0

也许是因为即时通讯使用2D变换?在我的网站http://www.daemondeveloper.com上查看它的当你将鼠标悬停在维恩图表上时淡入的div – 2012-07-12 20:47:44

回答

3

过去,这是一个更广泛的问题的维恩图悬停,但它仍然是与IE浏览器的问题。有几件事你可以做,以解决这个问题。首先,确保你的衰落元素有背景。

更大的问题是IE如何通过不透明度过滤器呈现文本呈现。除了明显的抗锯齿外,字形形状实际上也可以发生相当大的变化。一个解决方案是预先将IE的不透明度过滤器应用于99%的元素。这实质上是不透明的,但它确保了元素在你的jQuery效果中一致的呈现。

建立在伊万的的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