CSS 变换(transform)生成器

生成 CSS transform 值:平移、旋转、缩放、倾斜,以及 3D 透视、rotateX/rotateY 和 translateZ,并支持 transform-origin 和实时预览。

预设

2D 变换

3D 变换

透视为 0 表示不使用。没有透视时 3D 旋转看起来是平的。

变换原点

预览

A

虚线框表示变换前的元素,红点为变换原点。

CSS 代码
transform: none;

相关工具

查看全部

什么是 CSS 变换生成器?

用滑块组合 CSS transform 函数:2D 的平移、旋转、缩放和倾斜,以及 3D 的 perspective、rotateX、rotateY 和 translateZ。预览中的虚线轮廓显示原始位置,红点标出变换原点。

如何使用 CSS 变换生成器

  1. 选择预设(3D 倾斜、翻转、倾斜、放大、3D 卡片),或从“无”开始。
  2. 在“2D 变换”下调整“X 方向移动/Y 方向移动”、“旋转”、“X 方向缩放/Y 方向缩放”和“X 方向倾斜/Y 方向倾斜”。
  3. 在“3D 变换”下设置“透视”“绕 X 轴旋转(俯仰)”“绕 Y 轴旋转(转向)”和“Z 方向移动(深度)”。
  4. 从列表中选择“变换原点”,或设置“X 位置”/“Y 位置”。
  5. 复制 CSS 代码。

示例

输入
Move X 20px, Rotate 45°, Scale X 1.5, Scale Y 1.5
输出
transform: translate(20px, 0) rotate(45deg) scale(1.5);

这是对 X 方向移动 20px、旋转 45°、缩放 1.5 倍的组合。

何时使用 CSS 变换生成器

适合悬停效果、卡片翻转、倾斜的 3D 展示和精确的位置偏移。变换不会影响布局(周围的元素不会移动);要改变布局,请使用外边距、Flexbox 或 Grid。可结合 CSS 动画生成器在不同变换之间制作动画。

CSS 变换生成器 的工作原理

只有非中性的函数才会被写入,顺序为:perspective()、translate()、translateZ()、rotateX()、rotateY()、rotate()、scale()、skew()。变换相对于元素从右向左应用,所以顺序会改变结果;perspective() 必须放在最前面,才能影响其后的 3D 函数。X/Y 缩放相同时写成单个 scale(n)。只有当 transform-origin 与默认的中心(50% 50%)不同时才会输出。

常见用例

  • 3D 倾斜的商品卡片
  • 用 rotateY(180deg) 实现卡片翻转效果
  • 图片的悬停放大
  • 用倾斜制作斜体的区块标签
  • 用 translate(-50%, -50%) 实现居中技巧

常见问题

perspective() 和 perspective 属性有什么区别?

transform 内的 perspective() 只作用于该元素。父元素上的 perspective 属性则为其所有子元素创建共享的 3D 空间。

为什么我的 3D 旋转看起来是平的?

没有透视就没有景深缩短效果。请把“透视”设为 800px 之类的值。

transform 会影响布局吗?

不会。元素在布局中仍保留其原有空间,只有它的渲染被移动、旋转或缩放。

探索更多分类