• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

快乐之王

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

CSS:动画

1.css动画

首先我们要用@keyfames animationName在css文件中定义一个动画的名字,然后再需要使用的时候用animation: animationName duration time-function delay iteration-count direction fill-mode来使用即可。其中,animationName表示用户自定义的动画名称。duration表示动画完成的时间,以秒或毫秒为单位。time-function表示动画的速度曲线。delay表示动画开始之前的延迟。Iteration-count表示动画播放次数。direction表示是否轮流反向播放动画。fill-mode表示移动。

2.css动画优缺点

优点:

(1)浏览器可以对动画进行优化。

浏览器使用与 requestAnimationFrame 类似的机制,requestAnimationFrame比起setTimeout,setInterval设置动画的优势主要是:1)requestAnimationFrame 会把每一帧中的所有DOM操作集中起来,在一次重绘或回流中就完成,并且重绘或回流的时间间隔紧紧跟随浏览器的刷新频率,一般来说,这个频率为每秒60帧。2)在隐藏或不可见的元素中requestAnimationFrame不会进行重绘或回流,这当然就意味着更少的的cpu,gpu和内存使用量。

(2)强制使用硬件加速 (通过 GPU 来提高动画性能)

缺点:

(1)运行过程控制较弱,无法附加事件绑定回调函数。CSS动画只能暂停,不能在动画中寻找一个特定的时间点,不能在半路反转动画,不能变换时间尺度,不能在特定的位置添加回调函数或是绑定回放事件,无进度报告

(2)代码冗长。想用 CSS 实现稍微复杂一点动画,最后CSS代码都会变得非常笨重。

posted on 2020-01-15 20:31  小徐前端  阅读(270)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3