我想对元素应用一些CSS3转换,并有两个问题。 该网页包含许多粘滞便笺,我想放大点击(缩放)或翻转悬停(rotateY)他们通过应用CSS类与一些JavaScript。CSS3转换导致屏幕闪烁或别名字体
例如变焦类是这样的:
.postit-container.enabled {
z-index: 15;
-webkit-transition: -webkit-transform 0.15s ease-in-out;
-moz-transition: -moz-transform 0.15s ease-in-out;
-o-transition: -o-transform 0.15s ease-in-out;
-ms-transition: -ms-transform 0.15s ease-in-out;
transition: transform 0.15s ease-in-out;
-webkit-transform: scale(1.25);
-moz-transform: scale(1.25);
-o-transform: scale(1.25);
-ms-transform: scale(1.25);
transform: scale(1.25);
}
对于翻页效果,我只对:hover
使用rotateY(180deg)
。
每个贴图的默认旋转角度为6deg,我假冒随机旋转nth-child
CSS3选择器应用不同的旋转。
问题是屏幕在缩放或翻转时会随机闪烁和页面上的某些字体被改变,看起来很丑但不是全部,这真的很奇怪。
这里是一个的jsfiddle,所以你可以看到自己的问题:
JSfiddle(在Mac OS X 10.6.8与谷歌浏览器12.0.742.122测试)
我已经尝试过了-webkit-backface-visibility
伎俩,闪烁已经消失了,并肯定会进行转换,但字体看起来很难看所有时间。
我希望有人有一个魔术,因为我真的不明白这种行为。
我很想把例子放入jsfiddle,但这是一个非常复杂的页面和一个我不能那样分享的私人项目。我试过你的解决方案,但似乎没有工作......:/我会看看我是否可以伪装成jsfiddle;)谢谢。 – wnkz
这里是你jsfiddle:http://jsfiddle.net/DaPsn/10/ – wnkz
我看了一下,我用我在答案中提到的方法修复它。但是,我在'.postit-container'中添加了'-webkit-transform-style:preserve-3d'。唯一的问题是字体总是有点模糊,但它们至少是一致的。如果你仍然遇到其他元素的问题。尝试一个毯子'* {-webkit-transform-style:preserve-3d; }'。在这里修改http://jsfiddle.net/AshMokhberi/sczCa/。说实话,我认为你不会比这更好。 请不要忘记勾选我的答案。 – AshHeskes