我在Chrome中遇到了一个奇怪的错误(在Firefox中运行正常),不知道如何修复它。
http://jsfiddle.net/GkXA7/1/当鼠标悬停在卡片上时,图片显示在卡片的背面翻转。但是,如果我从右边定位图像,它就不会发生!? http://jsfiddle.net/GkXA7/2/
HTML
<div class="flip-container">
<div class="flipper">
<div class="front card">
<img width="40" height="40" src="http://images3.wikia.nocookie.net/__cb20120330024139/logopedia/images/d/d7/Google_Chrome_logo_2011.svg">
<h3>Front</h3>
</div>
<div class="back card">
<h3>Back</h3>
</div>
</div>
</div>
CSS
/* Flip Effect */
.flip-container {
perspective: 1000;
margin: 0 auto 20px;
}
/* flip the pane when hovered */
.flip-container:hover .flipper, .flip-container.hover .flipper {
transform: rotateY(-180deg);
-webkit-transform: rotateY(-180deg);
}
.flip-container {
width: 400px;
height: 200px;
}
/* flip speed goes here */
.flipper {
transition: 0.6s;
transform-style: preserve-3d;
position: relative;
-webkit-transform-style: preserve-3d;
}
/* hide back of pane during swap */
.flipper .card {
backface-visibility: hidden;
-webkit-backface-visibility: hidden;
text-align: center;
position: absolute;
top: 0;
left: 0;
width: 400px;
height: 200px;
}
.flipper .front{
background-color:green;
}
.flipper .back{
transform: rotateY(-180deg);
-webkit-transform: rotateY(-180deg);
background-color:red;
}
.front img{
position: absolute;
top:10px;
left:10px;
}
有没有办法防止图像出现在翻转面,同时仍然可以绝对定位?
答案 0 :(得分:1)
图像几乎与背面位于同一z位置,因此有时显示,有时则不显示。
我刚刚改变了:
.flipper .back{
transform: rotateY(-180deg) translateZ(-1px);
-webkit-transform: rotateY(-180deg) translateZ(-1px);
background-color:red;
}
1个像素有所作为!
似乎误读了你的要求,而你想要的恰恰相反。
当然现在我将像素翻译成正面!
一方显示另一方面的最终原因不是180度旋转实际上有点少,比如179.99度。因此,右侧有点“向下”,左侧有点“向上”