首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

每周一个前端动画之一:UC浏览器球队展示动画的实现

作为一个眼中有码的人,看见某个网页或者app的炫酷效果时,第一反应就是这怎么实现的。这个系列就是把自己见到的一些动画效果分析实现出来,本文分析实现的某些效果,仅仅作为一个思路分享,仅仅作为学习素材使用。闲话不说,这篇文章是前端动画系列的第一篇。

源动画效果

作为一个轻度伪球迷,经常会看些赛事比分,比如英超(利物浦是冠军)。使用UC的朋友应该发现过,UC在展示比赛时的效果还是很炫的,动画很简单,但是效果的确不错。效果图如下:

实现分析

经过观察不难发现:

动画效果是左右对称的,只要实现了一侧即可。

球队的logo只是在x轴进行了移动,但是停的位置以及停顿时机都需要注意

球队logo有一个从大到小的缩放

logo的透明度逐渐增大

分析出以上四点,就会发现效果实现起来也不复杂。

代码实现

动画使用CSS3的帧动画实现 ,不熟悉该属性用法的同学需要补补课了。注意该属性的兼容性写法,Safari 和 Chrome需要写成

我们只分析左侧曼联logo的实现即可。从logo进入到动画定格,我们将整个过程分成4个部分,可以确定4个关键帧:

关键帧1:logo放大一倍,x轴偏离初始位置到窗体外部。

关键帧2:logo放大一倍,x轴偏离初始位置到窗体中间部分,并稍作停顿,所以使用了50%,60%作停顿,时间函数使用了cubic-bezier来调整。

关键帧3:logo恢复到正常大小,x轴偏离初始位置略左侧,透明度已经变成完全不透明。

关键帧4:即从偏左位置到达最终的停留位置

效果展示

关键点解读计时函数

属性可以作用于整个动画中,定义了动画的每次循环是如何随时间递进的。

该属性还可以作用于关键帧,如本例的用法,各个关键帧都有单独的计时函数。这时的计时其实指的的帧之间的时间函数,顺序播放的动画,结尾关键帧的计时函数不会生效。

属性的值可选,有 ,以及还有阶跃函数 ,有兴趣的同学可以深入了解一下。

动画的实现其实很简单,代码已上传到github,欢迎提出Issues【https://github.com/zhyjor/animation-css-demos.git】

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180203G078TI00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券