登录
首页 >  文章 >  前端

CSS动画控制:animation-play-state暂停与恢复方法

时间:2025-10-07 20:18:35 445浏览 收藏

前往漫画官网入口并下载

想知道如何暂停和恢复CSS动画吗?本文将详细介绍如何利用 `animation-play-state` 属性轻松控制CSS动画的播放状态。通过设置 `animation-play-state` 为 `paused` 或 `running`,你可以实现动画的暂停和恢复,无需修改关键帧或动画时间。文章不仅介绍了 `animation-play-state` 的基本语法和用法,还提供了JavaScript动态控制以及利用 `:hover` 伪类实现悬停暂停动画的实用示例。掌握这些技巧,让你的网页动画更加灵活可控,提升用户体验!立即学习,让你的CSS动画玩转暂停与恢复!

使用 animation-play-state 属性可控制 CSS 动画暂停,其值为 running 或 paused,默认为 running;通过 JavaScript 切换添加 paused 类或利用 :hover 伪类,即可实现动画的暂停与恢复,无需重设关键帧或动画时间。

css animation-play-state暂停动画如何实现

要实现 CSS 动画的暂停,可以通过 animation-play-state 属性来控制动画的运行与暂停。这个属性允许你在不改变其他动画设置的情况下,动态地暂停或恢复动画。

animation-play-state 基本用法

该属性有两个常用值:

  • running:动画正常播放
  • paused:动画暂停

默认状态下,动画是 running 状态。你可以通过 CSS 类切换来控制状态。

通过类切换控制暂停

例如,你有一个持续旋转的元素:

@keyframes spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

.animated-element {
  animation: spin 2s linear infinite;
}

.paused {
  animation-play-state: paused;
}

在 HTML 中:

我会转圈

通过 JavaScript 添加或移除 .paused 类即可控制暂停:

const element = document.querySelector('.animated-element');
element.classList.add('paused'); // 暂停动画
element.classList.remove('paused'); // 继续动画

鼠标悬停暂停动画

常见需求是鼠标悬停时暂停动画,可以直接用 :hover 伪类:

.animated-element:hover {
  animation-play-state: paused;
}

这样用户将鼠标移到元素上时,动画就会暂停,移开后自动继续(前提是 animation 没有被中断)。

基本上就这些,使用 animation-play-state: paused 是最直接、高效控制 CSS 动画暂停的方式,无需重置时间或修改关键帧。

今天关于《CSS动画控制:animation-play-state暂停与恢复方法》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>