CSS | transition 和 transform的用处和区别

省流总结: transform用于变换/变形,transition是动画控制器

transform 用来对元素进行变形 ,常见的操作如下,它是立即生效的样式变形属性

旋转rotate(角度deg) 、平移translateX(像素px)、缩放 scale(倍数)、倾斜 skewX(角度deg)

操作 示例 说明
旋转 transform: rotate(180deg) 让元素顺时针旋转 180 度
平移 transform: translateX(100px) 右移动 100 像素
缩放 transform: scale(1.2) 放大到原来的 1.2 倍
倾斜 transform: skewX(30deg) 沿 X 轴倾斜

transition 用来设置 元素样式变化时的 过渡动画效果,它必须配合其他属性(如 transform, opacity, color 等**)的变化使用**。

二者对比:

项目 transform transition
作用 实际改变元素形状、位置等 决定变换过程是否平滑
直接效果 会立即变换 只有当某些属性变化时才起作用
是否动画属性 ❌ 不是动画,只是变换 ✅ 是动画控制器
常配合的属性 translate, rotate transform, opacity, color

问题:transition 和 transform 的用处和区别?

css 复制代码
.header-angle { 
    transition: transform var(vk-duration); 
    &.is-activeed { 
        transform: rotate(180deg); 
    } 
}

transform 是干什么的?

transform 用来对元素进行变形,常见的操作包括:

操作 示例 说明
旋转 transform: rotate(180deg) 让元素顺时针旋转 180 度
平移 transform: translateX(100px) 右移动 100 像素
缩放 transform: scale(1.2) 放大到原来的 1.2 倍
倾斜 transform: skewX(30deg) 沿 X 轴倾斜

它是立即生效的样式变形属性


transition 是干什么的?

transition 用来设置 元素样式变化时的 过渡动画效果,比如:

css 复制代码
transition: transform 0.3s;

它表示:当 transform 发生变化时,用 0.3 秒的时间来渐变地应用这个变化。

⚠️ 注意:transition 不能单独生效,必须配合其他属性(如 transform)的变化使用


✅ 二者关系总结

项目 transform transition
作用 实际改变元素形状、位置等 决定变换过程是否平滑
直接效果 会立即变换 只有当某些属性变化时才起作用
是否动画属性 ❌ 不是动画,只是变换 ✅ 是动画控制器
常配合的属性 translate, rotate transform, opacity, color

🧪 举个实际例子

比如一个按钮带小箭头,你想点击时箭头旋转:

css 复制代码
<div :class="{ 'header-angle': true, 'is-activated': isOpen }">
  ⬇️
</div>

isOpenfalse 变为 true 时:

  • class="header-angle"class="header-angle is-activated"

  • transform: rotate(180deg) 被触发

  • transition 让这个旋转过程是平滑的动画

相关推荐
加班是不可能的,除非双倍日工资3 小时前
css预编译器实现星空背景图
前端·css·vue3
wyiyiyi4 小时前
【Web后端】Django、flask及其场景——以构建系统原型为例
前端·数据库·后端·python·django·flask
gnip4 小时前
vite和webpack打包结构控制
前端·javascript
excel5 小时前
在二维 Canvas 中模拟三角形绕 X、Y 轴旋转
前端
阿华的代码王国5 小时前
【Android】RecyclerView复用CheckBox的异常状态
android·xml·java·前端·后端
一条上岸小咸鱼5 小时前
Kotlin 基本数据类型(三):Booleans、Characters
android·前端·kotlin
Jimmy5 小时前
AI 代理是什么,其有助于我们实现更智能编程
前端·后端·ai编程
ZXT5 小时前
promise & async await总结
前端
Jerry说前后端5 小时前
RecyclerView 性能优化:从原理到实践的深度优化方案
android·前端·性能优化
画个太阳作晴天5 小时前
A12预装app
linux·服务器·前端