纯CSS实现心形加载动画(附源码)
时间:2021-05-25
来源:互联网
标签:
今天PHP爱好者给大家带来本篇文章给大家介绍一下纯CSS实现心形加载动画的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

废话不多说上代码,代码很简答,研究一下就明白了,有不明白的可以问我。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style type="text/css">
.heart-loading {
margin-top: 120px;
width: 200px;
height: 200px;
}
ul {
list-style: none;
display: flex;
justify-content: space-between;
width: 150px;
height: 10px;
/* 做心形和条形想法是一样的,但是每条高度是不一样的 */
}
li {
--count: 9;
--rgb: calc(var(--index) / var(--count) * .5turn);
/* 不能把这个延时设置的太慢.太慢就看不出来是心形了,同时调整延时和动画时长即可 */
--time: calc((var(--index) - 1) * 150ms);
border-radius: 5px;
width: 10px;
height: 10px;
background-color: #003BB3;
/* 利用fiter函数可以让颜色渐变会非常漂亮 */
filter: hue-rotate(var(--rgb));
/* 下边这个是动画时长 */
animation-duration: 2.5s;
animation-delay: var(--time);
animation-iteration-count: infinite;
}
.line-1,
.line-9 {
animation-name: line-move-1;
}
.line-2,
.line-8 {
animation-name: line-move-2;
}
.line-3,
.line-7 {
animation-name: line-move-3;
}
.line-4,
.line-6 {
animation-name: line-move-4;
}
.line-5 {
animation-name: line-move-5;
}
/* 对称的动画要相同高度,这样看出心形了 */
@keyframes line-move-1 {
0%,
10%,
90%,
100% {
height: 10px;
}
45%,
55% {
height: 30px;
transform: translate3d(0, -15px, 0);
}
}
@keyframes line-move-2 {
0%,
10%,
90%,
100% {
height: 10px;
}
45%,
55% {
height: 60px;
transform: translate3d(0, -30px, 0);
}
}
@keyframes line-move-3 {
0%,
10%,
90%,
100% {
height: 10px;
}
45%,
55% {
height: 80px;
transform: translate3d(0, -40px, 0);
}
}
@keyframes line-move-4 {
0%,
10%,
90%,
100% {
height: 10px;
}
45%,
55% {
height: 90px;
transform: translate3d(0, -30px, 0);
}
}
@keyframes line-move-5 {
0%,
10%,
90%,
100% {
height: 10px;
}
45%,
55% {
height: 90px;
transform: translate3d(0, -20px, 0);
}
}
</style>
</head>
<body>
<p class="heart-loading">
<ul>
<li class="line-1" style="--index: 1"></li>
<li class="line-2" style="--index: 2"></li>
<li class="line-3" style="--index: 3"></li>
<li class="line-4" style="--index: 4"></li>
<li class="line-5" style="--index: 5"></li>
<li class="line-6" style="--index: 6"></li>
<li class="line-7" style="--index: 7"></li>
<li class="line-8" style="--index: 8"></li>
<li class="line-9" style="--index: 9"></li>
</ul>
</p>
</body>
</html>

以上就是纯CSS实现心形加载动画(附源码)的详细内容,更多请关注php爱好者其它相关文章!
-
Ext.MessageBox消息框使用详解 时间:2025-11-20 -
GAppProxy超详细安装配置教程 时间:2025-11-20 -
C#中e.Cancel用法详解 e.Cancel和e.Handled区别 时间:2025-11-20 -
TestDirector超详细下载、安装、配置教程 时间:2025-11-20 -
AssemblyInfo.cs文件详解(常见属性及作用等) 时间:2025-11-20 -
什么是无理数 常见的无理数有哪些 无理数和有理数的区别 时间:2025-11-19
今日更新
-
伤不起的梗是什么梗?揭秘网络热词背后的爆笑真相!
阅读:18
-
明日方舟:终末地地区建设-地区建设系统使用手册
阅读:18
-
币安账户安全验证指南:如何有效规避洗钱风险
阅读:18
-
恋与深空福利活跃活动-奇趣妙探活动11月21日开启
阅读:18
-
2025年狗狗币(DOGE)币价格预测:狗狗币能否迎来反弹浪潮?
阅读:18
-
崩坏3回归要多少天-崩坏3回归用户天数要求
阅读:18
-
物华弥新琉璃塔拱门-免伤减伤大成体器者
阅读:18
-
恋与深空五星思念甜野极驰-11月21日开启限时UP
阅读:18
-
逆水寒神相pve元素流-新木桩一键10w+搭配
阅读:18
-
币安风控日志查询指南:快速定位查看方法
阅读:18










