目前试图在我的测试站点上获得一个简单的跨浏览器 3D CSS3 卡片翻转效果。
结果在 Firefox 中运行良好,但在 WebKit 中,图像的一半消失了,并且闪烁了很多。
我已经根据网络上的工作示例检查了代码,例如
由于我在那里找不到困难,我现在怀疑背景的 z-index 位置和卡片的透视值相互对战——尽管我现在无法找出它们之间的相互关系。
这是我使用的 CSS:
'#t02panel' 用作卡片,'#t2front' 和 '#t2back' 是它的两个面。
隐藏#t02back 的背面(这在逻辑上不应该造成伤害,也不是必需的……)可以避免在 Firefox 中闪烁的外观,但对 WebKit 没有好处。
#t02front { -webkit-backface-visibility: hidden; }
#t02back { -webkit-transform: rotateY (-180deg); -moz-transform: rotateY(-180deg); -o-transform: rotateY(-180deg); transform: rotateY(-180deg); }
#t02front, #t02back { position:absolute; z-index: 1; box-sizing: border-box;
-moz-backface-visibility: hidden; -o-backface-visibility: hidden; backface-visibility: hidden; }
#topic02 #t02panel { -webkit-perspective: 600; -moz-perspective: 600; -o-perspective: 600; perspective: 600;
-webkit-box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.5); -moz-box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.5); -o-box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.5); box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.5);
-webkit-transform-style: preserve-3d; -moz-transform-style: preserve-3d; -o-transform-style: preserve-3d; transform-style: preserve-3d;
-webkit-transition: -webkit-transform 1s; -moz-transition: -moz-transform 1s; -o-transition: -o-transform 1s; transition: transform 1s;
-webkit-transition: all 1.0s linear; -moz-transition: all 1.0s linear; -o-transition: all 1.0s linear; transition: all 1.0s linear; }
#topic02:hover #t02panel { -webkit-transform: rotateY(180deg); -moz-transform: rotateY(180deg); -o-transform: rotateY(180deg); transform: rotateY(180deg); }
任何关于如何让它跨浏览器工作的输入都非常感谢!!!