有趣的CSS - css loading动画

Loading动画

整体效果

这个 Loading 效果主要用 css3 的 animation 属性配合 border 属性来实现的。

可以用作在下拉列表 Loading,也可以用作 app 页面下拉刷新时使用。

Less is more,用最少的代码实现满意的效果。


核心代码部分,简要说明了写法思路;完整代码在最后,可直接复制到本地运行。

核心代码

html 代码:

html 复制代码
<div class="loading"></div>

写出 loading 主体代码。

css 部分代码:

css 复制代码
.loading {
  width: 50px;
  height: 50px;
  border: 4px solid rgba(0, 0, 0, 0.2);  /*  设置整体边框背景颜色*/
  border-top-color: #000000;  /* 单独设置顶部边框颜色来表示动态部分 */
  border-radius: 50%;
  animation: loading 1s linear infinite;  /* 设置循环动画参数 */
}

@keyframes loading {
  to {
    transform: rotate(360deg);  /* 设置旋转360度 */
  }
}

css 部分主要设置边框颜色来实现整体边框配合顶部边框模拟加载状态,然后使用 animation 来实现整体旋转。


完整代码如下

html 页面:

html 复制代码
<!DOCTYPE html>
<html lang="zh">
  <head>
    <meta charset="utf-8">
    <link rel="stylesheet" href="style.css">
    <title>loading</title>
  </head>
  <body>
    <div class="app">
      <div class="loading"></div>
    </div>
  </body>
</html>

css 样式:

css 复制代码
/** style.css **/
.app{
    width: 100%;
    height: 100vh;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.loading {
    width: 50px;
    height: 50px;
    border: 4px solid rgba(0, 0, 0, 0.2);
    border-top-color: #000000;
    border-radius: 50%;
    animation: loading 1s linear infinite;
}

@keyframes loading {
    to {
        transform: rotate(360deg);
    }
}

页面渲染效果:

以上就是所有代码,css3 有很多好玩的属性,可以实现非常多的效果,让页面视觉变的更丰富多彩!

这个加载动画的写法希望可以帮助到你可以 get 到新想法。


1 原文阅读

我是 Just,这里是「设计师工作日常」,求点赞求关注!skr~ skr~

相关推荐
铁皮饭盒13 分钟前
Bun执行python代码
前端·javascript·后端
hunterandroid36 分钟前
Service 与前台服务:让任务在后台持续运行
前端
米饭同学i37 分钟前
深扒 LobsterAI 官网前端动效实现方案:从交互细节到代码实践
前端
前端啊1 小时前
告别 el-table 打印难题,vue3-print-el-table 来了!
前端·vue.js
JarvanMo1 小时前
AI时代跨平台还有必要吗?
前端
Patrick_Wilson1 小时前
幂等到底是什么?从前端视角讲透 SQL、HTTP 与 POST 接口的幂等设计
前端·后端·架构
凌览1 小时前
一人公司别再上 Jenkins,真不值
前端·后端
oil欧哟1 小时前
Codex 最佳实践(超级长文):先搞懂 AI,再用好 AI
前端·人工智能·后端
小小小小宇1 小时前
前端渲染方式
前端
京东云开发者2 小时前
全球首个!京东全栈开源JoyAI-VL-Interaction,让大模型从“一问一答”走向“边看边说”
前端