在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
今天要介绍一种很简单的使用 CSS 控制动画播放与暂停的小技巧。 使用好了,可以在很多实际场景得以运用。 我们先来看个例子,本例子是我在闲逛 Codepen 时看到了,很有意思: 本例子,CodePen: https://codepen.io/mikegolus/pen/jJzRwJ 上面整个过程都是由 CSS 完成。抛开如何用 CSS 实现上述一些 UI 效果。本文主要讲的是如何只用 CSS 控制一次动画的行进,暂停与开始。 拆解分析需求 上述动画控制要完成的效果是:
解决需求 看着好像挺复杂的,其实实现起来很容易,主要借助了伪类 我们以一个运动的小球做一个简单的示例,小球从左运动到右。 <div></div> div { margin: 50px auto; width: 100px; height: 100px; background: #000; animation: move 1s linear; animation-fill-mode: forwards; } @keyframes move { 100% { transform: translate(200px, 0) rotate(180deg); } } 接下来,我们就进行简单的改造,动画的默认状态是暂停的: div { margin: 50px auto; width: 100px; height: 100px; background: #000; animation: move 1s linear; animation-fill-mode: forwards; + animation-play-state: paused; } 只有通过点击的时候,动画才会运行: body:active div { animation-play-state: running; } 看看效果,为了方便看清点击的过程,在点击的过程中,我也改了下背景颜色(背景变色表示当前鼠标按下): CodePen Demo: https://codepen.io/Chokcoco/pen/XGvwjL 总结一下 嗯,整个过程其实非常简单。理解了这种方法后,就可以随意加到你想的任何动画中,再抛一个类似的 Demo: CodePen Demo: https://codepen.io/Chokcoco/pen/ZPgxwy 非常有用的一个小技巧,赶紧 GET 起来。 到此这篇关于CSS 控制动画播放与暂停的小技巧(非常实用)的文章就介绍到这了,更多相关CSS 控制动画播放与暂停内容请搜索极客世界以前的文章或继续浏览下面的相关文章,希望大家以后多多支持极客世界! |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论