• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >建站教程 > 使用CSS实现一个吃豆人的Loading加载效果

使用CSS实现一个吃豆人的Loading加载效果

作者:站长图库 字体:[增加 减小] 来源:互联网

站长图库向大家介绍了CSS加载,吃豆人,Loading加载等相关知识,希望对您有所帮助

本篇文章给大家介绍一下使用纯CSS怎么实现一个吃豆人的Loading加载效果,希望对大家有所帮助!


使用CSS实现一个吃豆人的Loading加载效果


CSS确实是魅力大的离谱,可能最近一段时间关注我文章的会知道,我发了好多跟CSS有关的文章了,有的是看到网上有这种效果,自己进行复刻,有的是利用一个自己刚看到的知识点,运用它去做一些好玩的东西,总之,CSS真的太好玩啦!

今天给大家带来的表演,创意起源于我的博客的友链页,如果他人的头像我请求不到资源,那么就会补上一个吃豆人的Loading上去,而这个吃豆人,就是我今天带来的表演~


使用CSS实现一个吃豆人的Loading加载效果


实现吃豆人的大嘴巴

先来实现左边的大嘴巴,我是用了两个这种形状的东西,完后给下面的那个margin-top:-50px,它俩就实现了重叠,之后用动画效果,让上面顺时针旋转,下方与之相反,旋转90°就可以实现嘴巴张开合上的动作了。

使用CSS实现一个吃豆人的Loading加载效果

width: 0px;height: 0px;border-right: 25px solid transparent;border-top: 25px solid #279fcf;border-left: 25px solid #279fcf;border-bottom: 25px solid #279fcf;border-radius: 25px;

旋转动画分别是:

@keyframes rotate_pacman_up {  0% {    -webkit-transform: rotate(270deg);            transform: rotate(270deg); }   50% {    -webkit-transform: rotate(360deg);            transform: rotate(360deg); }   100% {    -webkit-transform: rotate(270deg);            transform: rotate(270deg); } }
@keyframes rotate_pacman_down {  0% {    -webkit-transform: rotate(90deg);            transform: rotate(90deg);      }   50% {    -webkit-transform: rotate(0deg);            transform: rotate(0deg);      }   100% {    -webkit-transform: rotate(90deg);            transform: rotate(90deg);       } }

之后将动画加到我们刚刚生成的那两个元素的css中即可(运用这个属性就行:animation),因为我是div套了div,所以我用的是伪元素来选择的:分别是first-of-type和nth-child(2),选中了第一个跟第二个div来作为吃豆人的嘴巴。

要注意的是,两个嘴巴的动画时间要同步,否则这个嘴可就上下乱窜了:

animation: rotate_pacman_up 0.75s 0s infinite

现在的效果是这样的:

使用CSS实现一个吃豆人的Loading加载效果

实现吃豆人的豆子

同样,我们在刚刚的两个div同级的地方,又建了三个div,我真是太喜欢div了~

万物皆可div!!!


豆子相对于嘴巴来说就很简单,首先他是圆的,其次呢,它的动画是向左移动的,具备这两个条件,就可以了。我们直接使用伪元素选中3、4、5三个div,加上这段css即可。

background-color: #279fcf;width: 15px;height: 15px;border-radius: 100%;margin: 2px;width: 10px;height: 10px;position: absolute;transform: translate(0, -6.25px);top: 25px;left: 100px;

会不会有人问:为什么你就知道定位的时候是-6.25px呢?,最后解释最后解释。


接下来加上向左移动的动画:

@keyframes pacman-balls {  75% {    opacity: 0.7; }   100% {    -webkit-transform: translate(-100px, -6.25px);            transform: translate(-100px, -6.25px); } }

似乎,要是走一段变得透明一些是不是会更好?这个有待考虑~

最后将动画分别用选择器挂到第3、4、5个div上就行啦,同时要注意,动画的起始时间不要设置成一样的,否则它们就同步啦!!!我这里设置的分别是0.33/0.66/0.99秒哦~ 就像这样:

animation: pacman-balls 1s 0.33/0.66/0.99s infinite linear

看一下最终效果吧~

使用CSS实现一个吃豆人的Loading加载效果

关于那个-6.25px

其实.....我研究了好半天,我把图给大家,要是能算出来也帮我算算,我最后是实验出来的,6到7都差不多,但是6.25更顺眼一些emmm,但是实验到7px的时候,小圆的圆心就有点明显偏上了,所以emm就6.25吧(差不多~,还有就是我想写6.5的,但是总觉得6.25好听点emm)。


使用CSS实现一个吃豆人的Loading加载效果

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 使用CSS实现一个吃豆人的Loading加载效果

相关文章

  • Javascript如何获取用户输入的值
  • 解决并分析Incorrect datetime value报错问题
  • Javascript中window.close如何不提示弹窗
  • 让padding、border等不占据高宽度的方法
  • PHP怎么指定跳出几层循环
  • 5款优秀的在线表单设计器
  • PhotoShop CS5打造木栈道婚纱外景照片后期合成教程
  • vue+flask实现视频合成功能(拖拽上传)
  • 如何使用微信获取openid的静默及非静默
  • 三种在php程序中嵌入html代码的方法

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • Photoshop制作汉服妹子签名教程
    • Centos7如何启动与切换图形界面
    • AI和PS快速制作漂亮复古海报
    • sql语句中创建表的语句是什么
    • vue.js如何实现可拖拽菜单
    • 聊聊小程序怎么实现“全文收起”功能
    • Thinkphp6微信PC端登录和手机端登录逻辑分享
    • PHP常用函数之根据生日计算年龄功能示例
    • 织梦DedeCMS时隔多年,终于更新了!(DedeCMSV5.7版下载)
    • 解析thinkPHP基于反射实现钩子的方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有