CSS3 -moz-transform:rotateY无法按预期工作

时间:2013-10-14 10:58:42

标签: css3 firefox css-transforms

我尝试使用CSS3的转换属性来翻转div,但它在Firefox中无法正确呈现。

在这里演示:http://jsfiddle.net/6zyzu/5/
将鼠标悬停在红色方块上并查看问题。
(在Firefox中旋转红色方块时,红色方块背面的文字隐藏在前一个方块(蓝色)下面,然后旋转动画完成后,文本跳到蓝色方块上方)。

以下代码:

HTML:

<div></div>
<div id="s1" class="flip-container">
    <div class="flipper">
        <div class="front"><p>front</p></div>
        <div class="back"><p>back</p></div>
    </div>
</div>
<div id="s2" class="flip-container">
    <div class="flipper">
        <div class="front"><p>hello</p></div>
        <div class="back"><p>world</p></div>
    </div>
</div>

CSS:

div { height:200px; width:200px; float:left; margin-right:20px; }
#s2 .front { background-color:#f00; }
#s2 .back { background-color:#0f0; }
#s1 .front { background-color:#00f; }
#s1 .back { background-color:#0ff; }

.flip-container { perspective: 1000; -webkit-perspective: 1000; -moz-perspective: 1000; }
/* flip the pane when hovered */
.flip-container:hover .flipper, .flip-container.hover .flipper {
    -webkit-transform: rotateY(180deg);
    -moz-transform: rotateY(180deg);
    transform: rotateY(180deg);
    filter: FlipH;
    -ms-filter: "FlipH";
}
/* flip speed goes here */
.flipper {
    -webkit-transition: 0.6s;
    -webkit-transform-style: preserve-3d;
    -moz-transition: 0.6s;
    -moz-transform-style: preserve-3d;
    transition: 0.6s;
    transform-style: preserve-3d;
}
/* hide back of pane during swap */
.front, .back {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    backface-visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
}
/* front pane, placed above back */
.front { z-index: 2; }
/* back, initially hidden pane */
.back {
    -webkit-transform: rotateY(180deg);
    -moz-transform: rotateY(180deg);
    transform: rotateY(180deg);
    width: 300px;
    height: 180px;
}

1 个答案:

答案 0 :(得分:1)

嗯,这可能是预期的行为,但你并不确定它会发生: - )

不是一个普遍的答案,只是为了向你展示道路:

updated demo

我添加了

#s1 {   -moz-transform: translateZ(1000px);}

向后发送第一个div;现在第二个div在所有旋转过程中都可见。