CSS 动画和过渡是强大的工具,可以让您的网页栩栩如生。它们使您能够创建流畅、引人入胜、具有视觉吸引力的效果,从而增强用户体验。无论您是想添加状态之间的简单转换还是吸引注意力的复杂动画,了解这些功能的基础知识都是至关重要的。在本指南中,我们将介绍如何创建淡入效果、CSS 过渡和动画之间的区别、创建无限关键帧动画、延迟开始过渡,以及使用动画定时函数创建弹跳效果。
您可以通过我为每个示例添加的 Codepen 与代码进行交互和操作!
要创建淡入效果,您可以使用@keyframes规则来定义动画的阶段。关键帧指定动画的开始和结束状态,动画属性将动画应用于元素。这是一个例子:
在此代码中:
.fade-in 类在 2 秒内应用 fadeIn 动画,并具有缓入淡出计时功能。
@keyframes fadeIn 规则定义动画,将不透明度从 0 更改为 1。
CSS 转换:
用于当元素从一种状态更改为另一种状态时的简单状态更改。
需要触发器(如 :hover、:focus 或 :checked)来开始转换。
自动将属性从初始状态插值到最终状态。
在此示例中,悬停时 .box 元素的背景颜色将在 0.5 秒内转变为蓝色。
CSS 动画:
用于更复杂的动画序列,涉及多个阶段。
使用 @keyframes 定义,不需要触发器即可启动。
可以自动运行,无限循环,并提供对时间和顺序的更多控制。
在此示例中,.rotate 类应用连续旋转动画,每 2 秒完成一次完整旋转。
要创建无限运行的动画,请使用animation-iteration-count 属性并将其值设置为infinite。这使得动画无限循环。这是一个例子:
.spin 类将使元素连续旋转,每 2 秒完成一次完整旋转。
要延迟转换的开始,请使用转换延迟属性。此属性指定转换在开始之前应等待多长时间。这是一个例子:
在此示例中,背景颜色将在 :hover 事件触发后 2 秒变为热粉色,过渡需要 0.5 秒才能完成。
animation-timing-function 属性可以与自定义三次贝塞尔值或预定义关键字一起使用来创建各种效果。对于反弹效果,您可以定义关键帧并使用缓动或自定义三次贝塞尔值。这是一个例子:
在此示例中:
@keyframes 弹跳规则通过上下移动元素来定义弹跳效果。
.bounce 类应用弹跳动画,该动画每 2 秒无限重复一次,并具有轻松计时功能。
希望这篇文章对您有所帮助,我们下一篇见!
以上是CSS 动画和过渡:快速指南的详细内容。更多信息请关注PHP中文网其他相关文章!