做动画最要的是思路,做多了,动画其实非常简单,我们今天来实现一个小菊花加载动画:

做动画的关键一步是「拆分」,这张图中包含了 12 根「小柱子」,每根小柱子的透明度不一样,让这 12 根「小柱子」旋转起来,就构成了整个动画:

做这个动画可以按照下面几步来实现:

第一步:画出 12 根小柱子,并设置不同的透明度。通过观察发现,我们可以画 12 个正方形,每个正方形中画 1 条竖线,通过旋转的方式来改变小柱子的位置:

代码可以这样写,创建一个 div 来包裹这 12 个正方形,通过 ::before 给正方形添加一个小柱子:

第二步:想把这 12 个正方形组合成一个圆,需要把他们旋转一下,每个正方形旋转 30度,正好是 1 圈(30*12=360),并设置不同的透明度:

代码类似这样,把每个元素进行旋转 30度,为不影响阅读体验,我只截了 3 个元素的代码图:

第三步:这 12 个正方形现在是竖直排列的,我们把它们重叠到一块,这些小柱子就组成了一个圆。

修改类选择器 dot 的 position 属性为 absolute,这时这些元素即可重叠起来:

为了好辨别,我给每个正方形加了边框,我把边框去掉就成了我们想要的效果:

第四步:让这个圆旋转起来就可以了:

旋转直接使用 CSS 的 animation 即可实现,这个地方需要大家注意一下,这里用的 timing-function 是 steps(12),关于 step 函数,在 小猴子跌落山崖之 linear、ease、ease-in 这节内容中我并没有提到,这里补存一下。steps 它可以把一个动画的 duration 分成几段,每段来完成一个动作,动画执行期间元素看起来并不是「平滑」地过度,比如钟表的秒针跳动:

这个小菊花的 Loading 也是让它有类似的效果,一蹦一蹦的感觉。

今天这节内容主要利用了 transform 的 rotate() 函数,在 让按钮“呼吸”一会(呼吸动画)这节内容中运用了 scale() 函数,transform 对于做动画是一把「尖刀」,关于 transform 还有很多属性值得学习:

本文借鉴了 vant-weapp 的设计思想。


推荐阅读:环形进度条没有想象的那么简单跳动的音符动画实现原理剖析https://github.com/youzan/vant-weapp/tree/dev/dist/loadinghttps://designmodo.com/demo/stepscss/index.html

透明loading_四步搞定小菊花 Loading 动画相关推荐

  1. 四步搞定小菊花 Loading 动画

    做动画最要的是思路,做多了,动画其实非常简单,我们今天来实现一个小菊花加载动画: 做动画的关键一步是「拆分」,这张图中包含了 12 根「小柱子」,每根小柱子的透明度不一样,让这 12 根「小柱子」旋转 ...

  2. xbox虚拟服务器,小白玩家看这里!国行Xbox One快速上手攻略 四步搞定

    小白玩家看这里!国行Xbox One快速上手攻略 四步搞定 2014-09-25 10:55:04来源:游戏下载编辑:评论(0) 还有4天时间国行Xbox One就将与大陆玩家见面了,想想还是有点小激 ...

  3. RxJava的使用,教你四步搞定RxBus.

    教你四步搞定RxBus. 1,在你的工程中添加依赖   dependencies {compile fileTree(include: ['*.jar'], dir: 'libs')testCompi ...

  4. 四步搞定ansible-tower

    四步搞定ansible-tower 环境准备 centos7 + 2c/G (笔者测试) step1 下载ansible-tower最新版 wget https://releases.ansible. ...

  5. 四步搞定OPENVAS安装

    四步搞定OPENVAS安装 第一步: Configure Atomicorp Repository (as user root, only once) wget -q -O http://www.at ...

  6. 四步搞定阿里云RDS云数据库恢复到本地mysql数据库

    第1步:下载提取工具和阿里云rds数据库备份文件 1.先去阿里云数据rds后台–>备份恢复–>下载你的数据备份 2.下载阿里云官方提供的rds_backup_extract.sh数据备份文 ...

  7. mfc通过ado链接oracle,VS2013环境下MFC通过ADO连接Oracle数据库 四步搞定

    这两天需要做有关MFC连接Oracle的项目,上网搜了老半天,东拼西凑,终于搞通了MFC下ADO方式连接Oracle的程序. 下面就按我新建的项目来进行一下说明(项目名称:adooracle) 第一步 ...

  8. SAP GUI 自动登录教程,简单四步搞定

    第一步:更改注册表 在表中添加Security->EnablePassword 值设置为1 第二步:生成快捷方式 登录SAP GUI 点击注销旁边的按钮按提示生产快捷 生成后如图 第三步:生成加 ...

  9. AI Studio精选项目 | 儿童X光胸部肺炎诊断,用飞桨四步搞定

    点击左上方蓝字关注我们 还在愁如何入手二分类项目?今天小编给大家介绍一篇AI Studio的精品医疗行业二分类项目,只需4步即可达成,准确度达到95.5%以上. 项目介绍 肺炎是常见病,影像检查在肺炎 ...

  10. 搞一个短信验证码登录,难吗?四步搞定!

    来源:blog.csdn.net/classabcd/java/article/details/82464582 一.首先添加一个jar包,工具类会用到 二.编写http请求工具类 三.生成四位数的方 ...

最新文章

  1. ASP.NET中利用cookies保持客户端信息
  2. android jni研究
  3. 源码|并发一枝花之CopyOnWriteArrayList
  4. 20165328 预备作业3 Linux安装及命令
  5. MySQL5.7.x 安装 Linux7环境
  6. MATLAB设置x为0到10所有数,MATLAB教学_10数值微积分
  7. Java方法实现是什么意思_Java中实现可调用的最佳方法是什么,需要一段时间才能完成...
  8. 安装Oracle11gR2先决条件检查失败的详细解决处理过程
  9. Visual C++ 6.0下载安装及编写第一个C程序
  10. 西瓜创客的python_西瓜创客Python客户端
  11. keil symbol外部符号定义
  12. github 邮箱_GitHub基本操作(一)
  13. android转发短信到邮箱,利用短信通知的方式在Tasker中实现收到Android手机短信自动转发到邮箱...
  14. SEI文献整理2:A Review of Radio Frequency Fingerprinting Techniques(2020)
  15. Jitsi的公网部署与SSL证书手动安装
  16. 沟通技巧-《好好说话》书中的精髓:掌握沟通、说服、谈判、演讲、辩论的五维话术,让你在任何场景下,都能做到处变不惊,学会说话这个技术活。
  17. 走进音视频的世界——音视频的基本概念
  18. python统计小说人物_python统计喜欢的小说主角出场次数
  19. thinkphp6控制器
  20. powerbi如何创建参数_Power BI中参数的用法

热门文章

  1. SQL Fundamentals || Single-Row Functions || 数字函数number functions
  2. 圆角进度条,带数字居中显示的圆角进度条
  3. 关于oracle的笔记
  4. BZOJ 1011: [HNOI2008]遥远的行星( )
  5. 01背包 hihocoder第六周
  6. Java基础知识强化之集合框架笔记15:List集合的特点
  7. 动态创建和移除HTML标签
  8. Spring AOP原理分析(二)--@EnableAspectJAutoProxy功能分析
  9. JVM初识之类加载器
  10. eclipse无法访问sun.misc.Unsafe类的解决办法