有趣的css - 多弧形加载动画

大家好,我是 Just,这里是「设计师工作日常」,今天分享的是用纯css实现多双弧线加载动画。

《有趣的css》系列最新实例通过公众号「设计师工作日常」发布。


目录

  • 整体效果
  • 核心代码
    • html 代码
    • css 部分代码
  • 完整代码如下
    • html 页面
    • css 样式
    • 页面渲染效果

整体效果

知识点:
①熟悉 :before:after 伪选择器的使用
②熟悉 animation 动画属性
③通过 border 来绘制双弧线

思路:先写出主体双弧线,然后通过 :before:after 来添加新的双弧线,然后设置不同的 animation 属性来让双弧线动起来。


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

核心代码

html 代码

<div class="loading42"></div>

div 标签作为主体双弧线。

css 部分代码

.loading42{width:40px;height:40px;border:6px solid rgba(0,0,0,0);border-top-color: #b12a5b;border-bottom-color: #b12a5b;border-radius:50%;position: relative;animation: eff42 1.4s linear infinite;  /*设置主体动画参数*/
}
.loading42:after{content: '';width:60px;height:60px;border:6px solid rgba(0,0,0,0);border-top-color: #ff8177;border-bottom-color: #ff8177;border-radius:50%;position: absolute;top: -16px;left: -16px;animation: inherit;animation-duration: 0.7s;  /*设置动画持续时间*/animation-direction: reverse;  /*设置动画反向*/
}
.loading42:before{content: '';width:20px;height:20px;border:6px solid rgba(0,0,0,0);border-top-color: #ff8177;border-bottom-color: #ff8177;border-radius:50%;position: absolute;top: 4px;left: 4px;animation: inherit;animation-duration: 0.7s;  /*设置动画持续时间*/animation-direction: reverse;  /*设置动画反向*/
}
@keyframes eff42{to{transform: rotate(360deg);}
}

1、页面中 div 作为主体,通过 border 属性绘制出主体双弧线,并且给它设置 animation 动画属性相关参数

2、然后基于主体双弧线通过 :before:after 新增两个新的双弧线,设置不同的宽度、高度以及边框颜色,通过定位让三个双弧线居中分布

3、然后给两个伪选择器 :before:after 设置动画时长( animation-duration 属性 )以及动画反向( animation-direction 属性 )。

完整代码如下

html 页面

<!DOCTYPE html>
<html lang="zh"><head><meta charset="utf-8"><link rel="stylesheet" href="style.css"><title>多弧形加载动画</title></head><body><div class="app"><div class="loading42"></div></div></body>
</html>

css 样式

/** style.css **/
.app{width: 100%;height: 100vh;background-color: #ffffff;position: relative;display: flex;justify-content: center;align-items: center;
}
.loading42{width:40px;height:40px;border:6px solid rgba(0,0,0,0);border-top-color: #b12a5b;border-bottom-color: #b12a5b;border-radius:50%;position: relative;animation: eff42 1.4s linear infinite;
}
.loading42:after{content: '';width:60px;height:60px;border:6px solid rgba(0,0,0,0);border-top-color: #ff8177;border-bottom-color: #ff8177;border-radius:50%;position: absolute;top: -16px;left: -16px;animation: inherit;animation-duration: 0.7s;animation-direction: reverse;
}
.loading42:before{content: '';width:20px;height:20px;border:6px solid rgba(0,0,0,0);border-top-color: #ff8177;border-bottom-color: #ff8177;border-radius:50%;position: absolute;top: 4px;left: 4px;animation: inherit;animation-duration: 0.7s;animation-direction: reverse;
}
@keyframes eff42{to{transform: rotate(360deg);}
}

页面渲染效果

以上就是所有代码,以及简单的思路,希望对你有一些帮助或者启发。


[1] 原文阅读


CSS 是一种很酷很有趣的计算机语言,在这里跟大家分享一些 CSS 实例 Demo,为学习者获取灵感和思路提供一点帮助,希望你们喜欢。

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/573553.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站可扩展架构设计

从公众号转载&#xff0c;关注微信公众号掌握更多技术动态 --------------------------------------------------------------- 一、可扩展性架构简介 1.可扩展性是什么 可扩展性指系统为了应对将来需求变化而提供的一种扩展能力&#xff0c;当有新的需求出现时&#xff0c;系…

【ripro美化】全站美化包WordPress RiPro主题二开美化版sucaihu-childV1.9(功能集成到后台)

使用介绍 1、【宝塔】删除ripro文件&#xff0c;上传最新ripro版本&#xff0c;然后上传压缩包内的ripro里面的对应文件到ripro主题对应内覆盖&#xff08;找到对应路径单个文件去覆盖&#xff09;。 2、然后上传ripro-chlid子主题美化包到/wp-content/themes路径下 3、注意顺…

node的安装

官网下载&#xff08;建议使用预编译包安装&#xff09; 地址&#xff08;https://nodejs.org/en/download/prebuilt-binaries&#xff09; 解压包&#xff0c;并将 bin下面的 node npm npx加入到环境变量中或者建立软连接 ln -s 安装位置/bin/node PATH下面的路径 npm配置…

CPU、GPU等硬件检测工具(组装机硬件负责)

1.CPU&#xff08;CPU-Z&#xff09; 下载地址&#xff1a;CPU-Z | Softwares | CPUID 安装or解压 相关的软件信息&#xff1a; 2.GPU&#xff08;GPU-Z&#xff09; 下载地址&#xff1a;TechPowerUp GPU-Z v2.57.0 Download | TechPowerUp 安装 相关的软件信息&#xf…

C++第十三弹---内存管理(下)

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】【C详解】 目录 1、operator new与operator delete函数 1.1、operator new与operator delete函数 2、new和delete的实现原理 2.1、内置类型 2.2、自定义类型 …

【PostgreSQL PGCE-091题目解析31】pg中的默认隔离级别为?

本文为云贝教育刘峰&#xff08;微信&#xff1a;yunbee_DBA&#xff09;原创&#xff0c;请尊重知识产权&#xff0c;转发请注明出处&#xff0c;不接受任何抄袭、演绎和未经注明出处的转载。 pg中的默认隔离级别为&#xff1f; A、读未提交 B、读已提交 C、重复读 D、串…

深入探讨iOS开发:从创建第一个iOS程序到纯代码实现全面解析

iOS开发作为移动应用开发的重要领域之一&#xff0c;对于开发人员具有重要意义。本文将深入探讨iOS开发的各个方面&#xff0c;从创建第一个iOS程序到纯代码实现iOS开发&#xff0c;带领读者全面了解iOS应用程序的开发流程和技术要点。 &#x1f4f1; 第一个iOS程序 在创建第…

JetBrains全家桶激活,分享 WebStorm 2024 激活的方案

大家好&#xff0c;欢迎来到金榜探云手&#xff01; WebStorm公司简介 JetBrains 是一家专注于开发工具的软件公司&#xff0c;总部位于捷克。他们以提供强大的集成开发环境&#xff08;IDE&#xff09;而闻名&#xff0c;如 IntelliJ IDEA、PyCharm、和 WebStorm等。这些工具…

让手机平板成为AI开发利器:AidLux

想ssh登录自己的手机吗&#xff1f; 想在手机上自由的安装lynx、python、vscode、jupyter甚至飞桨PaddlePaddle、Tensorflow、Pytorch和昇思Mindspore吗&#xff1f; 那么看这里....装上AidLux&#xff0c;以上全都有&#xff01; AidLux是一个综合的AI开发平台&#xff0c;…

Capture One Pro 22 for Mac/win:重塑RAW图像处理的艺术

在数字摄影的世界里&#xff0c;RAW图像处理软件无疑是摄影师们手中的魔法棒&#xff0c;而Capture One Pro 22无疑是这一领域的璀璨明星。这款专为Mac和Windows系统打造的图像处理软件&#xff0c;以其出色的性能、丰富的功能和极致的用户体验&#xff0c;赢得了全球摄影师的广…

LeetCode 27 移除元素

给你一个数组 nums 和一个值 val&#xff0c;你需要 原地 移除所有数值等于 val 的元素&#xff0c;并返回移除后数组的新长度。 不要使用额外的数组空间&#xff0c;你必须仅使用 O(1) 额外空间并 原地 修改输入数组。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面…

基于cuda和opengl高性能处理渲染多阵列摄像头8K画面(一)

前言的前言 科学&#xff01;技术 科学&#xff01;技术&#xff0c;非常有同感&#xff0c;接触过很多博士&#xff0c;硕士&#xff0c;博士的科学理论化和想象力更多一些&#xff0c;用于指导技术&#xff0c;而一些硕士和本科的技术的实践性更强一些&#xff0c;用于反向传…