loading加载效果(纯css)

2023-05-16

一.平滑加载

<div class="loading-1"></div>
        *{
            box-sizing: border-box;
        }
        .loading-1{
            margin: 0 auto;
            width: 120px;
            height: 20px;
            background: linear-gradient(#000 0 0) 0/0% no-repeat #add;
            animation: load1 2s infinite linear;
        }
        @keyframes load1 {
            100%{background-size: 100%;}
        }

 

linear-gradient(#000 0 0) 你可以理解为 linear-gradient(#000 0 100%),如果还不熟悉,复制 linear-gradient(#000 0 50%, #f00 50% 0) ,替换原先的部分跑一下。觉得 linear-gradient(#000 0 0) 别扭的话,直接写 #000 即可。

0/0% 是 background-position: 0;/background-size: 0; 的简写。

二.按部加载

<div class="loading-2"></div>
 .loading-2 {
            width: 120px;
            height: 20px;
            border-radius: 20px;
            background:
                linear-gradient(orange 0 0) 0/0% no-repeat lightblue;
            animation: p2 2s infinite steps(10);
        }

  @keyframes p2 {
            100% {
                background-size: 110%
            }
   }

 

steps(10) 是 step(10, end) 的简写,指明刚开始没有,所以有第2点的处理

100% {background-size:110%} 添加多一个 step 的百分比,上面的 step 是 10,所以是100% + (1/10)*100% = 110%

三.条纹加载

.loading-3{
  width:120px;
  height:20px;
  border-radius: 20px;
  background:
   repeating-linear-gradient(135deg,#f03355 0 10px,#ffa516 0 20px) 0/0% no-repeat,
   repeating-linear-gradient(135deg,#ddd 0 10px,#eee 0 20px) 0/100%;
  animation:p3 2s infinite;
}
@keyframes p3 {
    100% {background-size:100%}
}

 

repeating-linear-gradient(135deg,#ddd 0 10px,#eee 0 20px) 0/100%; 画出灰色的斑马线条纹,repeating-linear-gradient(135deg,#f03355 0 10px,#ffa516 0 20px) 0/0% no-repeat 则是进度条加载的条纹。

四。虚线加载

.loading-4 {
            width: 120px;
            height: 20px;
            -webkit-mask: linear-gradient(90deg, #000 70%, #0000 0) 0/20%;
            background:
                linear-gradient(#000 0 0) 0/0% no-repeat #ddd;
            animation: p4 2s infinite steps(6);
        }

        @keyframes p4 {
            100% {
                background-size: 120%
            }
        }

 -webkit-mask 默认有值 repeat,不然遮罩不会有五个。

五.电池加载

.loading-5 {
            margin: 50px auto;
            width: 80px;
            height: 40px;
            border: 2px solid #000;
            padding: 3px;
            background:
                repeating-linear-gradient(90deg, #000 0 10px, #0000 0 16px) 0/0% no-repeat content-box content-box;
            position: relative;
            animation: p5 2s infinite steps(6);
        }

        .loading-5::before {
            content: "";
            position: absolute;
            top: 50%;
            left: 100%;
            transform: translateY(-50%);
            width: 10px;
            height: 10px;
            border: 2px solid #000;
        }

        @keyframes p5 {
            100% {
                background-size: 120%
            }
        }

 

六。内嵌加赞

 .loading-6 {
            width: 120px;
            height: 22px;
            border-radius: 20px;
            color: #514b82;
            border: 2px solid;
            position: relative;
        }

        .loading-6::before {
            content: "";
            position: absolute;
            margin: 2px;
            inset: 0 100% 0 0;
            border-radius: inherit;
            background: #514b82;
            animation: p6 2s infinite;
        }

        @keyframes p6 {
            100% {
                inset: 0
            }
        }

七。珠链加载

 .loading-7 {
            width: 120px;
            height: 24px;
            -webkit-mask:
                radial-gradient(circle closest-side, #000 94%, #0000) 0 0/25% 100%,
                linear-gradient(#000 0 0) center/calc(100% - 12px) calc(100% - 12px) no-repeat;
            background:
                linear-gradient(#25b09b 0 0) 0/0% no-repeat #ddd;
            animation: p7 2s infinite linear;
        }

        @keyframes p7 {
            100% {
                background-size: 100%
            }
        }

 

八。斑马线加载

.loading-8 {
            width: 60px;
            height: 60px;
            border-radius: 50%;
            -webkit-mask: linear-gradient(0deg, #000 55%, #0000 0) bottom/100% 18.18%;
            background:
                linear-gradient(#f03355 0 0) bottom/100% 0% no-repeat #ddd;
            animation: p8 2s infinite steps(7);
        }

        @keyframes p8 {
            100% {
                background-size: 100% 115%
            }
        }

 

九。水柱加载

  .loading-9 {
            --r1: 154%;
            --r2: 68.5%;
            width: 60px;
            height: 60px;
            border-radius: 50%;
            background:
                radial-gradient(var(--r1) var(--r2) at top, #0000 79.5%, #269af2 80%) center left,
                radial-gradient(var(--r1) var(--r2) at bottom, #269af2 79.5%, #0000 80%) center center,
                radial-gradient(var(--r1) var(--r2) at top, #0000 79.5%, #269af2 80%) center right,
                #ccc;
            background-size: 50.5% 220%;
            background-position: -100% 0%, 0% 0%, 100% 0%;
            background-repeat: no-repeat;
            animation: p9 2s infinite linear;
        }

        @keyframes p9 {
            33% {
                background-position: 0% 33%, 100% 33%, 200% 33%
            }

            66% {
                background-position: -100% 66%, 0% 66%, 100% 66%
            }

            100% {
                background-position: 0% 100%, 100% 100%, 200% 100%
            }
        }

 

十。信号加载 

.loading-10 {
            width: 120px;
            height: 60px;
            border-radius: 200px 200px 0 0;
            -webkit-mask: repeating-radial-gradient(farthest-side at bottom, #0000 0, #000 1px 12%, #0000 calc(12% + 1px) 20%);
            background:
                radial-gradient(farthest-side at bottom, #514b82 0 95%, #0000 0) bottom/0% 0% no-repeat #ddd;
            animation: p10 2s infinite steps(6);
        }

        @keyframes p10 {
            100% {
                background-size: 120% 120%
            }
        }

 总结了十种,拿来即用,整体效果如下

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

loading加载效果(纯css) 的相关文章

随机推荐

  • 集群固定翼无人机飞行仿真平台附matlab代码

    作者简介 xff1a 热爱科研的Matlab仿真开发者 xff0c 修心和技术同步精进 xff0c matlab项目合作可私信 x1f34e 个人主页 xff1a Matlab科研工作室 x1f34a 个人信条 xff1a 格物致知 内容介
  • OpenCV是什么?OpenCV是干什么的?OpenCV概述

    OpenCV是一种开源计算机视觉库 xff0c 它提供了一些用于处理图像和视频的工具和算法 OpenCV最初是由英特尔公司开发的 xff0c 现在已经成为了一种广泛使用的开源工具 xff0c 它被用于各种各样的计算机视觉应用程序中 xff0
  • 最简单快速合并B站缓存视频和音频(video.m4s,audio.m4s)

    使用PotPlayer播放器可以将两个文件都加载播放 下载安装PotPlayer播放器https download csdn net download bao taotao 20405251打开video m4s视频在视频中右键选择打开 载
  • 机器学习和深度学习有什么区别?

    机器学习和深度学习是两个相互关联但又不完全相同的概念 机器学习是一种通过让计算机从数据中学习并改进算法模型 xff0c 实现对数据的自动分析 预测 分类和决策等任务的方法 而深度学习是一种机器学习的分支 xff0c 它通过构建多层神经网络
  • 什么是人工智能?(深度好文,带你初步了解当下最火的AI)一定要看完!

    1 基本概念 定义 机器学习是一门研究如何通过计算手段 xff0c 利用经验提升自身性能的学科 人工智能 机器学习与深度学习三者间的关系如图1 1所示 1 1 人工智能定义 努力将通常由人类完成的智力任务自动化 1 2 机器学习定义 是一种
  • Java自学宝典pdf,高性能缓存-Caffeine-原理及实战

    2 1 2 W TinyLFU 算法 Caffeine 使用了 W TinyLFU 算法 xff0c 解决了 LRU 和LFU上述的缺点 W TinyLFU 算法由论文 TinyLFU A Highly Efficient Cache Ad
  • stm32f103最小系统板详细介绍

    一 什么是单片机最小系统 常见的单片机最小系统为单片机能独立运行程序及控制外围电路的最简单电路 xff0c 主要由单片机 晶振电路 复位电路三部分构成 Stm32f103c8t6也不例外 xff0c 构成最小的运行电路也需要以上三部分 St
  • vscode集成gitee

    第一步 1 百度搜索Git xff0c 出现的第一个网站 xff08 如下图 xff09 Git xff09 2 下载 3 下载之后 双击安装 xff08 安装过程中只需要默认下一步 不需要多余操作 放心大胆的点击下一步 xff09 第二步
  • #include<string> #include<cstring>

    C 43 43 strings string 只能用cin cout处理 xff0c 不能 用scanf xff0c 和printf transform s begin s end s begin tolower 转换成小写的函数 tran
  • 一步步教你如何安装idea

    1 下载idea安装包 2 打开后完成解压 3 点击Next进入下一步 4 选择好我们需要安装的位置 xff0c 这里我选择D盘的一个文件夹进行安装 5 下面根据自己电脑的型号去选择 xff0c 32位或者64位 xff0c 我的电脑是64
  • 一步步教你如何配置Java环境变量(超级详细)

    1 首先需要去官网下载jdk的安装包 xff0c 下载网站 xff1a www oracle com 2 选择版本 xff0c 然后安装开发工具JDK 3 先右击此电脑 xff08 win10 然后点击属性 4 然后找到右边的高级系统设置
  • VMware虚拟机 ——Operation inconsistent with current state。操作与当前状态不一致解决方法

    今天一打开VMware虚拟机 就跳出个界面 xff0c 如下图 所示 xff1a Operation inconsistent with current state xff0c 这句话的意思是操作与当前状态不一致 我想着试试恢复快照行不行
  • MobaXterm远程连接虚拟机的Network error: Connection timed out 网络错误:连接超时解决办法

    今天打开MobaXterm远程连接我VMware虚拟机的时候出现以下界面 xff0c 问题详情如下 xff1a Network error Connection timed out Session stopped Press lt retu
  • 内外网端口映射

    总的来说 xff0c 外网就是我们一般说的Internet 相对的内网是指局域网 xff0c 内网需要一台服务器或路由器做网关 通过它来控制能否访问外网 映射的概念 xff1a 路由器一口接外网 一口接内网的交换机 交换机连接到各个电脑 路
  • VMware虚拟机进行配置网络 Linux

    1 首先输入账户密码登录我们要配置网络的那台虚拟机 2 开始手动输入命令 xff1a vi etc sysconfig network scripts ifcfg ens33 3 进行修改 xff1a 通过移动键盘的方向键将光标移到要修改的
  • 教你如何在idea里进行设置实现快捷键自动生成序列化版本号

    1 打开IDEA 2 找到左上方的File并点击 xff0c 然后找到下面的Setting xff0c 就是前面是个小扳手的 xff0c 点进去进行设置 3 开始设置 找到左边Editor并点左边箭头展开 xff0c 再找到下方的Inspe
  • 关于IDEA的一些设置

    一 IDEA 软件设置Settings页面 Settings是对软件本身的一些属性进行配置 xff0c 例如字体 主题 背景图 插件等 二 如何打开Settings设置页面 左上角File gt Setting 三 Appearance a
  • Linux命令退格键变成^H的解决办法

    方法一 xff1a 按住ctrl键再去按退格键 xff08 backspace xff09 xff0c 就ok了 xff1b 方法二 xff1a 把 stty erase H 添加到 bash profile中 操作如下 xff1a 1 v
  • Typora图床设置

    1 使用SM MS xff0c 进入User Login SM MS Simple Free Image Hosting 2 注册并登录 3 进入typora 的偏好设置中 4 选PicGo Core然后下载 xff0c 下载完毕之后打开配
  • loading加载效果(纯css)

    一 平滑加载 lt div class 61 34 loading 1 34 gt lt div gt box sizing border box loading 1 margin 0 auto width 120px height 20p