「HTML+CSS」--自定义加载动画【027】
前言
Hello!小伙伴!
首先非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出~
哈哈 自我介绍一下
昵称:海轰
标签:程序猿一只|C++选手|学生
简介:因C语言结识编程,随后转入计算机专业,有幸拿过国奖、省奖等,已保研。目前正在学习C++/Linux(真的真的太难了~)
学习经验:扎实基础 + 多做笔记 + 多敲代码 + 多思考 + 学好英语!
日常分享:微信公众号【海轰Pro】记录生活、学习点滴,分享一些源代码或者学习资料,欢迎关注~
效果展示
Demo代码
HTML
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><link rel="stylesheet" href="style.css"><title>Document</title>
</head>
<body><section><span></span></section>
</body>
</html>
CSS
html,body{margin: 0;height: 100%;
}
body{display: flex;justify-content: center;align-items: center;background: #263238;
}
section {width: 650px;height: 300px;padding: 10px;position: relative;display: flex;align-items: center;justify-content: center;border: 2px solid red;
}
span {width : 96px;height: 96px;border-radius: 50%;display: inline-block;position: relative;border: 10px solid white;border-bottom-color: transparent;animation: rotation 2s linear infinite ;
}
span::after{content: '';position: absolute;left: 51px;top: 79px;border: 20px solid transparent;border-right-color: white;transform: rotate(-45deg);
}
@keyframes rotation {0% { transform: rotate(0deg) }100% { transform: rotate(360deg)}
}
原理详解
步骤1
使用span标签作为箭尾,设置为
- 宽度、高度均为96px
- 边框:10px solid,其中上/左/右边框为白色 下边框为透明
width : 96px;height: 96px;border: 10px solid white;border-bottom-color: transparent;
效果图如下
步骤2
span标签圆角化
border-radius: 50%;
效果图如下
步骤3
使用span::after伪类元素 作为箭头
设置为
- 绝对定位
- 边框:20px solid,右边框为白色,上/下/左边框为透明
- 旋转-45度
position: absolute;/* left: 51px;top: 79px; */border: 20px solid transparent;border-right-color: white;transform: rotate(-45deg);
效果图如下
图片红色部分即为span::after
步骤4
设置span::after的位置
注:
- 这里移动位置时候就需要一点点移动了
- 确保箭头和箭尾可以很好的重合
- 这里肯定是可以用数学公式计算出来的,这里稍微需要点时间,之后有空再更新更为一般情况时需要移动的距离公式吧
/*这里箭头需要移动的距离*/left: 51px;top: 79px;
效果图如下
步骤5
为span添加动画
- 顺时针旋转(0-360度) 2s 无限循环
animation: rotation 2s linear infinite ;
/*动画实现*/
@keyframes rotation {0% { transform: rotate(0deg) }100% { transform: rotate(360deg)}
}
结语
学习来源:
https://codepen.io/bhadupranjal/pen/vYLZYqQ
文章仅作为学习笔记,记录从0到1的一个过程。希望对您有所帮助,如有错误欢迎小伙伴指正~
我是海轰ଘ(੭ˊᵕˋ)੭,如果您觉得写得可以的话,请点个赞吧
写作不易,「点赞」+「收藏」+「转发」
谢谢支持❤️
「HTML+CSS」--自定义加载动画【027】相关推荐
- 「HTML+CSS」--自定义加载动画【047】
前言 Hello!小伙伴! 首先非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出- 哈哈 自我介绍一下 昵称:海轰 标签:程序猿一只|C++选手|学生 简介:因C语言结识编程,随后转入计算机 ...
- Android为网络请求自定义加载动画
android自带的加载动画都不怎么好看,在这里介绍一种自定义加载动画的方法 原始图片: 编写动画progressbar.xml, <?xml version="1.0" e ...
- 纯css绘制齿轮加载动画
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 一.效果图 二.步骤 1.html部分 2.css部分 前言 纯css绘制齿轮加载动画. 无需使用任何图片及素材. 提示: ...
- CSS齿轮转动加载动画
CSS齿轮转动加载动画 前言:该动画主要流程分为三块:绘制齿轮,齿轮转动动画,出场动画 绘制齿轮 绘制齿轮主要是使用svg进行绘制的 <svg class="guaongRudderO ...
- 【微信小程序】自定义加载动画3
目录 效果图 配置 版本1 版本2 结语 效果图 配置 配置方法参考上一篇文章:[微信小程序]自定义加载动画 版本1 Component({behaviors
- 【微信小程序】自定义加载动画4
目录 效果图 配置文件 结语 效果图 配置文件 配置方法参考上一篇文章:[微信小程序]自定义加载动画 组件源代码: Component({behaviors: [],properties: {
- 直播app系统源码通过CSS液体实现加载动画
直播app系统源码通过CSS液体实现加载动画 首先我们要让元素能够旋转起来,可以使用transform中的rotate进行2D的360deg旋转. 紧接着我们可以通过CSS变量(–开头的形式)结合an ...
- Android 自定义加载动画LoadingView
前言 本文参考辉哥的博客属性动画 - 58同城数据加载动画,用来学习属性动画相关知识非常合适. 最终效果 整体思路 绘制部分分析: 整体加载动画由三部分组成: 1.上方的正方形.圆形以及三角形,需要进 ...
- 加载html动画logo,仅CSS实现的加载动画 – Loader.css
仅CSS实现的加载动画 – Loader.css 4月 13, 2015 评论 (6) Sponsor 当网页的页面大小较大,用户加载可能需要较长的时间,在这些情况下,我们一般会用到(加载)loadi ...
最新文章
- Android --- layout_marginStart和layout_marginEnd的详细讲解
- Linux基本命令 -- grep参数说明及常用用法
- hello python jpush_Python人脸识别 + 手机推送,老板来了你就会收到短信提示
- 从错误中学习,如何配置iis?
- yum源配置文件解释
- 怎么使用Vegas制作炫彩灯光效果?
- 学习的四重境界,给上初中侄女,如何学习,如何定义社会人才
- 在Java编程中,为什么char类型数组可以直接用数组名打印,而其他类型数组打印结果而是地址值。
- VSCode 使用code runner
- 博图——生成和导入外部源文件
- 计算机网络公网ip,怎么查看电脑的公网IP地址
- 微软网盘SkyDrive简单一步获取mp3外链的方法
- 模块学习2:基于PELCO-D协议对云台进行定点控制
- 高德地图zoom设置为小数
- SQL上机练习题目及答案
- 关于iframe框架?
- Word 2013版本管理
- 采样 | 高压直流采样电路详解
- css中min-height和max-height的区别
- 数学建模(五):图与网络模型