答案:利用CSS 3D变换实现卡片翻转。通过HTML结构搭建卡容器,使用perspective创建3D视角,transform-style: preserve-3d保持3D空间,backface-visibility: hidden隐藏背面,rotateY(180deg)实现翻转,hover触发过渡动画,无需JavaScript即可完成简易翻转效果。

要实现一个简易的卡片翻转效果,核心是利用 CSS 的 3D 变换和transform-style 属性。整个过程不需要 JavaScript,仅靠 HTML 和 CSS 即可完成。
卡片通常由一个容器(card)包裹正面和背面两个面:
<div class="card">
<div class="card-inner">
<div class="card-face front">正面内容</div>
<div class="card-face back">背面内容</div>
</div>
</div>
关键在于设置父容器的 3D 环境,并控制翻转行为:
立即学习“前端免费学习笔记(深入)”;
.card {
width: 200px;
height: 300px;
perspective: 1000px; /* 创建3D视角 */
}
<p>.card-inner {
width: 100%;
height: 100%;
position: relative;
transform-style: preserve-3d; /<em> 保持子元素3D空间 </em>/
transition: transform 0.6s ease-in-out;
}</p><p>.card:hover .card-inner {
transform: rotateY(180deg); /<em> 鼠标悬停时翻转 </em>/
}</p><p>.card-face {
width: 100%;
height: 100%;
position: absolute;
backface-visibility: hidden; /<em> 隐藏背面不可见的部分 </em>/
display: flex;
align-items: center;
justify-content: center;
border-radius: 10px;
box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}</p><p>.front {
background-color: #fff;
color: #000;
}</p><p>.back {
background-color: #007bff;
color: white;
transform: rotateY(180deg); /<em> 背面初始旋转180度 </em>/
}</p>理解这几个属性是实现翻转的核心:
你可以根据需要调整:
基本上就这些。不复杂但容易忽略细节,比如忘记 preserve-3d 或 backface-visibility,会导致翻转失效。
以上就是在css中如何制作简易卡片翻转效果的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号