【css酷炫效果】纯CSS实现3D翻转卡片动画

【css酷炫效果】纯CSS实现3D翻转卡片动画

想直接拿走的老板,链接放在这里:https://download.csdn.net/download/u011561335/90490472

创作随缘,不定时更新。

创作背景

刚看到csdn出活动了,赶时间,直接上代码。

html结构

clike 复制代码
    <div style='text-align:center;margin-top:50px;'>
		<div class="card-container">
		  <div class="card">
			<div class="front">正面内容</div>
			<div class="back">背面内容</div>
		  </div>
		  <!-- 复制多个卡片 -->
		  <div class="card">...</div>
		</div>
	</div>

css样式

clike 复制代码
/* 容器设置透视 */
.card-container {
  display: flex;
  justify-content: center;
  gap: 40px;
  perspective: 1000px;
}

/* 卡片基础样式 */
.card {
  width: 300px;
  height: 450px;
  position: relative;
  cursor: pointer;
  transform-style: preserve-3d; /* 启用3D空间 */
  transition: transform 0.8s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

/* 正反面公共样式 */
.front, .back {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  backface-visibility: hidden; /* 隐藏背面 */
  box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

/* 正面样式 */
.front {
  background: linear-gradient(45deg, #b490ca, #5ee7df);
  font-size: 30px;
  color: white;
}

/* 背面旋转180度并设置不同背景 */
.back {
  background: linear-gradient(45deg, #badbe9, #e0c7e3);
  transform: rotateY(180deg);
}

/* 悬停触发翻转 */
.card:hover {
  transform: rotateY(180deg);
}

完整代码

clike 复制代码
<!DOCTYPE html>
<html>
<head>
<style>
/* 容器设置透视 */
.card-container {
  display: flex;
  justify-content: center;
  gap: 40px;
  perspective: 1000px;
}

/* 卡片基础样式 */
.card {
  width: 300px;
  height: 450px;
  position: relative;
  cursor: pointer;
  transform-style: preserve-3d; /* 启用3D空间 */
  transition: transform 0.8s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

/* 正反面公共样式 */
.front, .back {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  backface-visibility: hidden; /* 隐藏背面 */
  box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

/* 正面样式 */
.front {
  background: linear-gradient(45deg, #b490ca, #5ee7df);
  font-size: 30px;
  color: white;
}

/* 背面旋转180度并设置不同背景 */
.back {
  background: linear-gradient(45deg, #badbe9, #e0c7e3);
  transform: rotateY(180deg);
}

/* 悬停触发翻转 */
.card:hover {
  transform: rotateY(180deg);
}
</style>
</head>
<body>
    <div style='text-align:center;margin-top:50px;'>
		<div class="card-container">
		  <div class="card">
			<div class="front">正面内容</div>
			<div class="back">背面内容</div>
		  </div>
		  <!-- 复制多个卡片 -->
		  <div class="card">...</div>
		</div>
	</div>
	
</body>
</html>

效果图

相关推荐
fanruitian3 小时前
uniapp android开发 测试板本与发行版本
前端·javascript·uni-app
rayufo3 小时前
【工具】列出指定文件夹下所有的目录和文件
开发语言·前端·python
RANCE_atttackkk3 小时前
[Java]实现使用邮箱找回密码的功能
java·开发语言·前端·spring boot·intellij-idea·idea
2501_944525545 小时前
Flutter for OpenHarmony 个人理财管理App实战 - 支出分析页面
android·开发语言·前端·javascript·flutter
李白你好5 小时前
Burp Suite插件用于自动检测Web应用程序中的未授权访问漏洞
前端
刘一说6 小时前
Vue 组件不必要的重新渲染问题解析:为什么子组件总在“无故”刷新?
前端·javascript·vue.js
徐同保7 小时前
React useRef 完全指南:在异步回调中访问最新的 props/state引言
前端·javascript·react.js
刘一说8 小时前
Vue 导航守卫未生效问题解析:为什么路由守卫不执行或逻辑失效?
前端·javascript·vue.js
一周七喜h8 小时前
在Vue3和TypeScripts中使用pinia
前端·javascript·vue.js
weixin_395448919 小时前
main.c_cursor_0202
前端·网络·算法