平滑CSS3悬停转换,同时防止消除锯齿

时间:2011-11-10 06:07:58

标签: css css3 css-transitions

previous question中,我想出了如何修复元素悬停时使用CSS3过渡旋转元素所导致的抗锯齿。但是,该修复已经改变了转变。在修复之前,从开始到结束的过渡是顺利的。自修复以来,过渡变得非常僵化。 (值得注意的是,使用Firefox时转换从未如此平稳,但在使用抗锯齿修复之前使用Safari或Chrome。)

这是我最初使用的代码。如果您使用的是Chrome或Safari,请注意当您将鼠标悬停在框上时的转换:

http://jsfiddle.net/CRc9d/

以下是修复抗锯齿的代码:

http://jsfiddle.net/JMgxC/

有没有办法协调第二个代码,以便保留抗锯齿修复,但也提供了更清晰的过渡?

2 个答案:

答案 0 :(得分:0)

这听起来类似于我之前遇到过的过渡问题。当从左到右移动div时,我的过渡是不平滑的。解决方案是确保所有3个CSS状态都具有左值(0px,300px,300px)。对于Firefox,Chrome,Safari和Opera,从那时起,转换顺利进行。在您的情况下,您可能希望为正在尝试的转换指定初始值。

答案 1 :(得分:0)

使用

-moz-transition-property:-moz-transform;

而不是

-moz-transition-property:rotate;

同上-webkit。