我一直在尝试为我正在开发的项目创建一个类似于翻转卡片的3D动画,但不幸的是我的动画看起来并不完全像3D效果。
我一直在使用这个指南。在第一个示例中,这个人成功地使窗口背景看起来像在翻转。然而,当我在JSFiddle上尝试使用相同的代码时,结果与他的不同。
他的演示代码产生了如下效果。当卡片被翻转时,其中一面会变小,给人透视的印象: 在我的JSFiddle中,使用他的代码(除了不同的背景),两侧似乎始终保持相同的大小: 有人可以解释一下我错过了什么,或者如何获得他在自己网站上的相同透视效果吗?谢谢提前。
他的HTML代码:
我一直在使用这个指南。在第一个示例中,这个人成功地使窗口背景看起来像在翻转。然而,当我在JSFiddle上尝试使用相同的代码时,结果与他的不同。
他的演示代码产生了如下效果。当卡片被翻转时,其中一面会变小,给人透视的印象: 在我的JSFiddle中,使用他的代码(除了不同的背景),两侧似乎始终保持相同的大小: 有人可以解释一下我错过了什么,或者如何获得他在自己网站上的相同透视效果吗?谢谢提前。
他的HTML代码:
<div id="f1_container">
<div id="f1_card" class="shadow">
<div class="front face">
<img src="/images/Windows%20Logo.jpg"/>
</div>
<div class="back face center">
<p>This is nice for exposing more information about an image.</p>
<p>Any content can go here.</p>
</div>
</div>
</div>
他的 CSS 代码:
#f1_container {
position: relative;
margin: 10px auto;
width: 450px;
height: 281px;
z-index: 1;
}
#f1_container {
perspective: 1000;
}
#f1_card {
width: 100%;
height: 100%;
transform-style: preserve-3d;
transition: all 1.0s linear;
}
#f1_container:hover #f1_card {
transform: rotateY(180deg);
box-shadow: -5px 5px 5px #aaa;
}
.face {
position: absolute;
width: 100%;
height: 100%;
backface-visibility: hidden;
}
.face.back {
display: block;
transform: rotateY(180deg);
box-sizing: border-box;
padding: 10px;
color: white;
text-align: center;
background-color: #aaa;
}