当前位置: 首页 > article >正文

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

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

  • 创作背景
  • html结构
  • css样式
  • 完整代码
  • 效果图

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

创作随缘,不定时更新。

创作背景

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

html结构

    <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样式

/* 容器设置透视 */
.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);
}

完整代码

<!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>

效果图

在这里插入图片描述


http://www.kler.cn/a/590063.html

相关文章:

  • Java 大视界 -- Java 大数据在智能教育虚拟实验室建设与实验数据分析中的应用(132)
  • LeRobot源码剖析——对机器人各个动作策略的统一封装:包含ALOHA ACT、Diffusion Policy、VLA模型π0
  • 【binlog2sql实践】MySQL数据库binlog日志ROW格式转换标准SQL
  • Linux 蓝牙音频软件栈实现分析
  • 美团Leaf分布式ID生成器:使用详解与核心原理解析
  • 关于虚拟网络编辑器还原默认设置那些坑
  • Pandas DataFrame:数据分析的利器
  • 解决从deepseek接口获取的流式响应输出到前端都是undefined的问题
  • 微服务架构中10个常用的设计模式
  • 平面阵列天线波束形成的Matlab仿真
  • 一场由 ES 分片 routing 引发的问题
  • 2025年Postman的五大替代工具
  • 【软考-架构】5.3、IPv6-网络规划-网络存储-补充考点
  • SpringData Redis:RedisTemplate配置与数据操作
  • 02 windows qt配置ffmpeg开发环境搭建
  • 电脑如何录屏
  • failed to load elasticsearch nodes
  • SpringBoot + Mybatis Plus 整合 Redis
  • mariaDB中常见的DDL,DML,DQL语句
  • 协程池是调用端并发请求的缓释胶囊