• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

CSS动画如何中途停止并维持姿态

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

前言

我曾经遇到过一个难题. 我需要让一个摆动的房子从塔吊上落下,但点击落下途中,房子需要维持落下瞬间摆动的角度. 当时把我难坏了,刚开始我希望能获取到房子当前摆动的角度,并且在下落的瞬间赋值给房子的transform:rotate(),但这是实在是太麻烦了,不会是最优解.

但其实只要一个属性就能解决这个问题.

animation-play-state

一、仅用CSS

使用该属性使一段动画在其运动周期中暂停.,并且下次开始时直接从当前这一帧开始. 这是一个动画属性,它对animation属性生效, 你既可以在CSS中使用它,也可以在JS中使用它,同样的方便,至少…比获取角度再赋值好到不知道哪里去.

.xxx {
  animation-play-state: paused;  
  //该属性一旦被添加,CSS动画会立即暂停,并且保持于当前帧
}

.xxx {
  animation-play-state: running; 
  //该属性一旦被添加,CSS动画会立即从当前帧开始运作;
}

你可以给一个页面元素添加一个animation,然后设置当hover状态时加上

 animation-play-state:paused

动画就会在你鼠标追上那个元素时停止.

二、仅用JS

//i等于1时媒体播放并且音符飘动,i等于0时媒体暂停音符暂停.
            if (i == 1) {
                right.style.animationPlayState = "paused"
                audio.pause();
                i = 0;
            } else {
                right.style.animationPlayState = "running";
                audio.play();
                i = 1;
            }

到此这篇关于CSS动画如何中途停止并维持姿态的文章就介绍到这了,更多相关css动画中途停止内容请搜索极客世界以前的文章或继续浏览下面的相关文章,希望大家以后多多支持极客世界!


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
CSS布局之浮动(float)和定位(position)属性的区别发布时间:2022-06-21
下一篇:
能用CSS实现的就不要麻烦JavaScript了发布时间:2022-06-21
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap