游乐游手机版
首页/前端开发/文章详情

CSS transition(过渡效果)详解

时间:2026-08-31 21:33
CSS transition 允许元素在指定时间内平滑地从一种样式过渡到另一种样式,无需依赖 JavaScript 或 Flash。本文详解 transition-property、transition-duration、transition-timing-function、transition-delay 及简写属性 transition 的语法与用法,提供完整代码示例与效果演示,帮助开发者快速掌握 CSS 过渡效果的核心机制与最佳实践。

CSS 默认会在属性值改变时立即更新样式,而 transition 提供了在指定时间内平滑过渡的能力。本文将逐一拆解 transition 的五个核心属性,结合可运行示例与效果演示,说明如何正确配置过渡参数、避免常见失效问题,并给出简写语法与多属性组合的最佳实践。

transition-property:指定参与过渡的属性

transition-property 用于声明哪些 CSS 属性会参与过渡效果。其语法如下:

transition-property: none | all | property;

  • none:没有任何属性参与过渡。
  • all:所有可过渡的属性都会参与过渡。
  • property:指定一个或多个属性名,多个属性之间用逗号分隔。

示例代码:

      

该示例中,仅 widthbackground 会在鼠标悬停时产生过渡效果,其他属性变化将立即生效。

transition-duration:控制过渡持续时间

transition-duration 决定过渡过程需要花费的时间,单位为秒(s)或毫秒(ms)。默认值为 0,若不显式设置,过渡效果将不会生效。

transition-duration: time;

当多个属性参与过渡时,可为每个属性单独指定时间,用逗号分隔;若只提供一个时间值,则所有属性共用该时长。

      

运行效果如下图所示:

transition-duration 属性演示

图:transition-duration 属性演示

transition-timing-function:设置过渡动画类型

transition-timing-function 控制过渡过程中的速度曲线,决定动画是匀速、先快后慢还是自定义节奏。可选值如下:

描述
linear以始终相同的速度完成整个过渡过程,等同于 cubic-bezier(0,0,1,1)
ease以慢速开始,然后变快,然后慢速结束的顺序来完成过渡过程,等同于 cubic-bezier(0.25,0.1,0.25,1)
ease-in以慢速开始过渡的过程,等同于 cubic-bezier(0.42,0,1,1)
ease-out以慢速结束过渡的过程,等同于 cubic-bezier(0,0,0.58,1)
ease-in-out以慢速开始,并以慢速结束的过渡效果,等同于 cubic-bezier(0.42,0,0.58,1)
cubic-bezier(n, n, n, n)使用 cubic-bezier() 函数来定义自己的值,每个参数的取值范围在 0 到 1 之间

示例代码:

      

transition-delay:设置过渡延迟时间

transition-delay 用于定义触发过渡后、实际开始执行前需要等待的时间,单位同样为秒或毫秒。

transition-delay: time;

示例代码:

      

运行效果如下图所示:

transition-delay 属性演示

图:transition-delay 属性演示

transition 简写语法与多属性组合

transition 是上述四个属性的简写形式,语法顺序如下:

transition: transition-property transition-duration transition-timing-function transition-delay;

其中 transition-propertytransition-duration 为必填项,后两项可省略。若需为不同属性配置不同的过渡参数,可使用逗号分隔多组值。

示例代码:

      

运行效果如下图所示:

transition 属性演示

图:transition 属性演示

上述简写等价于以下展开写法:

      

使用简写时需注意:若省略 timing-function 或 delay,浏览器会按默认值处理;多组参数必须严格对应,否则可能出现属性与时间错位的问题。建议在复杂过渡场景中优先使用展开写法,以提升可读性与维护性。

来源:https://m.biancheng.net/css3/transition.html
上一篇云服务器选型指南:配置、线路与系统选择 下一篇CSS 渐变色(颜色渐变)10分钟入门
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
CSS3入门指南:常用特性解析与实战练习路径
前端开发 · 2026-09-01

CSS3入门指南:常用特性解析与实战练习路径

CSS3是现代网页开发的核心技术,涵盖圆角、阴影、渐变、过渡、动画及响应式布局等高频特性。本文梳理了CSS3的核心应用场景、分步学习路径与综合练习案例,帮助初学者快速建立从基础排版到现代交互的完整开发思路,并规避常见样式陷阱。

CSS border 边框属性详解:语法、拆分写法与常见问题排查
前端开发 · 2026-09-01

CSS border 边框属性详解:语法、拆分写法与常见问题排查

本文系统讲解CSS标准边框属性border的完整语法结构,涵盖简写与拆分写法、单边控制技巧及border-radius配合方案。针对边框不显示、元素尺寸异常等高频问题提供排查路径,帮助开发者快速掌握边框设置规范并提升界面视觉一致性。

CSS3动画属性有哪些:常用属性与用法说明
前端开发 · 2026-09-01

CSS3动画属性有哪些:常用属性与用法说明

CSS3动画主要分为transition过渡与animation关键帧两类。本文梳理常用属性、简写语法与@keyframes规则,结合悬停、入场、循环等场景给出代码示例与选型建议,帮助开发者快速写出流畅且可控的动画效果。

CSS3渐变色语法与常见用法
前端开发 · 2026-09-01

CSS3渐变色语法与常见用法

CSS3渐变色通过纯代码生成平滑颜色过渡,广泛用于按钮、横幅与卡片背景。本文系统梳理线性与径向渐变的核心语法、方向控制、停靠点设置及多层叠加技巧,提供可直接复用的场景代码,并给出兼容性策略与常见渲染异常排查方法,帮助开发者快速构建稳定、可维护的渐变样式。

CSS3手册中文版下载指南:获取渠道、筛选标准与使用建议
前端开发 · 2026-09-01

CSS3手册中文版下载指南:获取渠道、筛选标准与使用建议

寻找CSS3手册中文版下载资源时,如何判断来源可靠性、筛选高质量内容并有效使用?本文从获取渠道、版本识别、下载验收到替代方案,提供一套可执行的判断标准,帮助你快速找到适合学习或查阅的中文手册。