当前位置:首页 > CSS

CSS3制作3D

2026-02-12 17:43:52CSS

CSS3 3D 变换基础

CSS3 的 transform 属性支持 3D 变换,通过以下关键属性实现:

  • rotateX()rotateY()rotateZ():绕 X/Y/Z 轴旋转。
  • translateZ():沿 Z 轴移动(控制深度)。
  • scale3d():三维缩放。
  • perspective:设置透视距离(数值越小,透视效果越强)。

示例代码:

.box {
  transform: rotateX(45deg) rotateY(30deg) translateZ(50px);
  perspective: 1000px;
}

3D 容器与子元素

父容器需设置 transform-style: preserve-3d 以保留子元素的 3D 效果,否则子元素会被压平到 2D 平面。

示例:

CSS3制作3D

.container {
  transform-style: preserve-3d;
  perspective: 500px;
}
.child {
  transform: rotateY(60deg) translateZ(100px);
}

创建 3D 立方体

通过 6 个面组合实现立方体,每个面通过 translateZ 控制位置。

关键代码:

CSS3制作3D

.cube {
  transform-style: preserve-3d;
  transform: rotateX(15deg) rotateY(30deg);
}
.face {
  position: absolute;
  width: 200px;
  height: 200px;
  opacity: 0.8;
}
.front { transform: translateZ(100px); }
.back { transform: translateZ(-100px); }
/* 其他面类似,调整 translateX/Y/Z */

动画与交互

结合 @keyframestransition 实现动态 3D 效果。

旋转动画示例:

@keyframes spin {
  from { transform: rotateY(0); }
  to { transform: rotateY(360deg); }
}
.cube {
  animation: spin 5s infinite linear;
}

性能优化

  • 避免频繁触发重绘,使用 will-change: transform 提示浏览器优化。
  • 优先使用 transformopacity,这两个属性可通过 GPU 加速。

兼容性提示:
部分旧浏览器需前缀(如 -webkit-transform),建议通过工具自动添加。

通过以上方法,可以灵活实现卡片翻转、3D 轮播等效果。

分享给朋友:

相关文章

css表格的制作方法

css表格的制作方法

基础表格结构 使用<table>标签创建表格框架,<tr>定义行,<td>定义单元格: <table> <tr> <td…

如何制作css

如何制作css

创建CSS文件 新建一个纯文本文件,将文件扩展名改为.css,例如style.css。确保文件名不含空格或特殊字符,使用连字符或下划线分隔单词。 编写CSS语法 CSS规则由选择器和声明块组成。选择…

css3制作简单动画

css3制作简单动画

CSS3 制作简单动画的方法 CSS3 提供了多种方式制作动画,主要通过 transition、transform 和 animation 属性实现。以下是几种常见的实现方法。 使用 transit…

css怎么制作个人主页

css怎么制作个人主页

设计布局结构 使用CSS的Flexbox或Grid布局创建响应式结构。Flexbox适合一维排列(如导航栏),Grid适合二维布局(如整体页面分区)。例如: .container { displ…

css制作表格

css制作表格

CSS 制作表格的方法 使用 CSS 可以灵活地创建和样式化表格,以下是几种常见的方法: 使用 HTML 表格标签结合 CSS 样式 通过 HTML 的 <table>、<tr&g…

css制作按钮

css制作按钮

基础按钮样式 使用CSS创建一个基础按钮需要定义display、padding、background-color和border等属性。以下是一个简单的示例: .button { display:…