前言

最近把hexo博客的主题从Maupassant换成了next,原因大概就是Maupassant的主题太简洁了吧,而且回到顶部的小火箭有点bug。
既然换了next主题,那就看看有什么个性化配置吧。不能光看config.yml里的官方配置,还得搜索一下网上有哪些大神自定义的小挂件小功能什么的。
搜着搜着呢,我就看到一个非常酷炫的字母人踢球动画。

可以去idhyt的主页看看实际效果。
那我呢,不过是小小前端初学者,做不来这么多帧的动画,但是又很喜欢这个效果,那就先写个简单的吧。

实现效果

实现思路

首先呢,我们需要确定:
1. 变形前的英文短句:I am Zhou cong
2. 变形后的人形态动作:简单的一个挥手打招呼动作

确定以上两点后,我们就要画一个草稿图:

最后,就是代码的实现过程:
为每个字母单独设置动画,需要注意的是行内元素不能使用transform,应该先设置display:inline-block;

<!--将每个字符都用span标签包裹,并且对每个字母设置动画效果--><div id="wrapper"><span id="letter1" class="letter">I</span><span id="letter2" class="letter">&nbsp;</span><span id="letter3" class="letter">a</span><span id="letter4" class="letter">m</span><span id="letter5" class="letter">&nbsp;</span><span id="letter6" class="letter">Z</span><span id="letter7" class="letter">h</span><span id="letter8" class="letter">o</span><span id="letter9" class="letter">u</span><span id="letter10" class="letter">&nbsp;</span><span id="letter11" class="letter">c</span><span id="letter12" class="letter">o</span><span id="letter13" class="letter">n</span><span id="letter14" class="letter">g</span></div>
#wrapper {font-size: 0;width: 500px;margin: 300px auto;text-align: center;
}.letter {display: inline-block;font-size: 20px;
}
/*动画时长和次数统一使用变量,方便修改*/
:root{--animation-time:4s;--animation-count:infinite;
}
/*0到25%进行变形,25%到75%保持人形态,75%到100%变形结束*/
@keyframes animation1{from,to{transform:translate(0,0);}25%,75%{transform:translate(100px,20px);}
}#letter1 {animation: animation1 var(--animation-time) var(--animation-count) ease;
}
/*篇幅问题,省略其他字母的样式*/
......

源码

  1. 完整的源码放在github上了,如果有需要可以下载。
    欢迎watch和star,不建议fork。
    tools/letter-man
  2. 放在hexo博客上的效果可以点此预览

总结

可能你们看的时候觉得这篇文章没什么技术含量。原理呢,大家都知道。说白了,不就是每个字母按动画来移动嘛。
我的感受就是,一开始看到这个效果我就觉得很惊艳,非常有创意。也能理解为什么张鑫旭说,css3最重要的也是最关键的改变就是动画。因为动画能更全面地体现一个设计者的才华和灵感。
所以,我自己实现了一个简化版的demo,一方面是为了体会这种耐心设计每一步动画的过程,另一方面也是希望自己能够积累经验,并且将这种感受分享给看这篇文章的你们。

最后,如果你有什么意见或者不解,欢迎评论区留言。希望一起共同学习进步。

css3 字母人动画相关推荐

  1. CSS3账号密码输入框动画模板

    简介: CSS3账号密码输入框动画模板,鼠标经过登录框动画效果,账号密码必须为4-16位数字或者英文字母. 下载地址: http://www.bytepan.com/14VcWUML1jh

  2. html怎么设置出场动画,CSS3 元素出现动画实例

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? css3中实现动画一般有两种方式,一个是transition过渡,一个是animation动画.最主要区别就是trans ...

  3. css3 transform animation 动画 小结

    css3 transform animation 动画 小结 最近在策划自己的博客,本来是想写一个 酷炫 可以让人玩的,全是动画的页面, 结果哎 - - 可以说是非常失败了,这是一个刷牙的动画,变色的 ...

  4. html5文章标题定格,jQuery和css3文章标题动画特效

    这是一款效果非常不错的jQuery和css3文章标题动画特效. HTML结构 所有效果的html结构是一样的,使用一个作为wrapper,给它一些margins和max-width.标题使用的是 标签 ...

  5. css3圆形轨迹动画

    <!doctype html>      <html lang="en">      <head>          <meta char ...

  6. css3 线条出现动画效果,CSS3实现的线条波浪动画效果

    HTML结构 该css3线条波浪动画效果的HTML结构如下: CSS样式 然后通过下面的CSS代码来制作线条波浪动画效果. @keyframes move_wave { 0% { transform: ...

  7. loading动画_超干货 CSS3/SVG Loading动画集合

    随着css3实现各种炫酷动画效果越来越流行.今天给大家推荐一些css3和SVG实现loading加载动画效果. 先上一波令人愉悦的动画效果. 怎么样,是不是感觉很nice,那就继续往下看吧.这里为大家 ...

  8. css3半空心圆_15个超强悍的CSS3圆盘时钟动画赏析

    本文作者html5tricks,转载请注明出处 在网页上,特别是个人博客中经常会用到时钟插件,一款个性化的时钟插件不仅可以让页面显得美观,而且可以让访客看到当前的日期和时间.今天我们给大家收集了15个 ...

  9. 9款超绚丽的HTML5/CSS3应用和动画特效

    HTML5 现在已经不是很前卫的东西了,越来越多的网站和移动应用都在不断地尝试使用HTML5来更好地优化用户体验.今天我们要分享9款超绚丽的HTML5/CSS3应用和动画特效,这里面有菜单.按钮.图片 ...

最新文章

  1. 【RocketMQ工作原理】
  2. 图解使用Win8Api进行Metro风格的程序开发二----使用文件选择器访问和保存文件
  3. 【Linux常用命令】grep命令
  4. 13.2.9 中间件
  5. System.ArgumentException: 输入数组长度大于此表中的列数。
  6. Linux之移动复制和删除
  7. serialversionuid的作用_为什么阿里Java规约要求谨慎修改serialVersionUID字段
  8. day 05总结(格式化输出的三种方式/基本运算符/if判断)
  9. spark KafkaRDD的理解
  10. 【报告分享】2022十大科技趋势-达摩院.pdf(附下载链接)
  11. 2833 奇怪的梦境 未AC
  12. PyTorch——device与cuda.device用法
  13. 上海 -》 张家界 旅行 计划10.1
  14. re.compile(r'xxx')中的r是什么意思
  15. nginx——反向代理,https加密证书,重定向
  16. MySQL索引重复插入数据报错
  17. [MS Project]Project软件入门两天之旅
  18. 记录10--fedora 14下安装tftp软件
  19. 【python小课堂专栏】python小课堂11 - 变量篇
  20. 京东商品及评论 数据采集

热门文章

  1. 北京的女光棍为何有50多万?
  2. 直播回顾|走进元服务,携手小强停车探索鸿蒙新流量阵地
  3. 全球CEO调查揭示新冠疫情带来永久性的变化;斗鱼二季度营收同比增长34% | 美通企业日报...
  4. 摘花生 —— C++
  5. word中横线怎么去掉
  6. html上下键移动单元格,如何用键盘的上下键盘来移动 表格的每一行
  7. 在Excel表格中如何快速拆分合并单元格
  8. python docx 合并文档 图片_Python和Word的交互批量生成报告
  9. 关于黑IP你了解多少?如何有效识别秒拨IP?
  10. 优酷视频html代码在哪,如何把视频上传到优酷并获取视频通用代码?