千家信息网

怎么用纯CSS实现抛盒子的loader

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,小编给大家分享一下怎么用纯CSS实现抛盒子的loader,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!代码解读定义dom,
千家信息网最后更新 2026年11月03日怎么用纯CSS实现抛盒子的loader

小编给大家分享一下怎么用纯CSS实现抛盒子的loader,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

  代码解读

  定义dom,只有1个元素:

  

  居中显示:

  body{

  margin:0;

  height:100vh;

  display:flex;

  align-items:center;

  justify-content:center;

  background-color:teal;

  }

  画出一根木条:

  .loader{

  width:6em;

  border-bottom:0.25emsolidwhite;

  font-size:30px;

  border-radius:0.125em;

  }

  用伪元素在其上画出一个盒子:

  .loader{

  position:relative;

  }

  .loader::before{

  content:'';

  position:absolute;

  width:1em;

  height:1em;

  border:0.25emsolidwhite;

  bottom:0;

  left:0.5em;

  border-radius:0.25em;

  }

  让图案倾斜,形成盒子在坡上的效果:

  .loader{

  transform:rotate(-45deg);

  left:1em;

  top:1em;

  }

  接下来制作动画。

  让盒子一步步爬坡,爬到坡顶再重爬:

  .loader::before{

  animation:push4sinfinite;

  }

  @keyframespush{

  0%{

  transform:translateX(0);

  }

  20%,25%{

  transform:translateX(1em);

  }

  40%,45%{

  transform:translateX(2em);

  }

  60%,65%{

  transform:translateX(3em);

  }

  80%{

  transform:translateX(0);

  }

  }

  增加盒子在爬坡的过程中的滚动效果:

  @keyframespush{

  0%{

  transform:translateX(0)rotate(0deg);

  }

  20%,25%{

  transform:translateX(1em)rotate(calc(90deg*1));

  }

  40%,45%{

  transform:translateX(2em)rotate(calc(90deg*2));

  }

  60%,65%{

  transform:translateX(3em)rotate(calc(90deg*3));

  }

  80%{

  transform:translateX(0)rotate(0deg);

  }

  }

  增加盒子在爬坡过程中的拟人效果:

  @keyframespush{

  0%{

  transform:translateX(0)rotate(0deg);

  }

  5%{

  transform:translateX(0)rotate(-5deg);

  }

  20%,25%{

  transform:translateX(1em)rotate(calc(90deg*1+5deg));

  }

  30%{

  transform:translateX(1em)rotate(calc(90deg*1-5deg));

  }

  40%,45%{

  transform:translateX(2em)rotate(calc(90deg*2+5deg));

  }

  50%{

  transform:translateX(2em)rotate(calc(90deg*2-5deg));

  }

  60%,65%{

  transform:translateX(3em)rotate(calc(90deg*3+5deg));

  }

  70%{

  transform:translateX(3em)rotate(calc(90deg*3-5deg));

  }

  80%{

  transform:translateX(0)rotate(-5deg);

  }

  }

  让木条在箱子爬到接近顶点时做抛掷动作:

  .loader{

  animation:throw3sinfinite;

  transform-origin:20%;

  }

  @keyframesthrow{

  0%,70%,100%{

  transform:rotate(-45deg);

  }

  80%{

  transform:rotate(-135deg);

  }

  }

  增加盒子在爬到接近顶点时的掉落效果:

  @keyframespush{

  70%{

  transform:translateX(3em)translateY(0)rotate(calc(90deg*3-5deg))scale(1);

  filter:opacity(1);

  }

  80%{

  transform:translateX(0)translateY(-5em)rotate(-5deg)scale(0);

  filter:opacity(0.5);

  }

  90%{

  transform:translateX(0)translateY(0)rotate(0deg)scale(0);

  }

  }

  最后,隐藏掉可能超出页面的部分:

  body{

  overflow:hidden;

  }

以上是"怎么用纯CSS实现抛盒子的loader"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

盒子 效果 篇文章 元素 内容 木条 过程 顶点 接下来 不怎么 代码 动作 动画 只有 图案 坡顶 大部分 拟人 更多 知识 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 上海喔噻互联网科技有限公司 博彦科技互联网金融 互联网科技未来 互联网的科技创新 鑫亿盛互联网科技 互联网科技论坛 深圳艾佳互联网科技 开启互联网科技时代小说 互联网科技公司需要的职位 现代互联网科技股 浙江互联网科技研学营 崇明区互联网教育科技售后服务 注册互联网科技公司经营范围大全 江苏互联网智能科技软件 新氧科技和美国互联网有关系吗 中国科技和美国互联网 银川新华互联网科技学校原画 美国五大互联网科技公司市值多少 深圳互联网科技园地址 武汉亿视互联网科技有限公司 互联网金融 科技 哈尔滨新华互联网科技学院 成都互联网科技公司100强 互联网科技创新服务 受益于互联网科技的高速发展 滨湖区互联网智能科技产品有哪些 合肥互联网科技公司公章图片 互联网科技包装股份有限公司上市 国产互联网科技公司 北京互联网科技类企业分布
0