加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

如何用HTML+CSS编一个等待的loading效果

发布时间:2023-10-11 14:56:11 所属栏目:语言 来源:
导读:这篇文章将为大家详细讲解有关“如何用HTML+CSS写一个等待的loading效果”的知识,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

这是 Element UI loading 组件
这篇文章将为大家详细讲解有关“如何用HTML+CSS写一个等待的loading效果”的知识,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
 
这是 Element UI loading 组件的效果图,看起来很酷,我们来实现一下!

分析
 
动画由两部分组成:
 
蓝色的弧线由点伸展成一个圆,又从圆收缩成一个点。

圆的父节点带着圆旋转
 
代码
 
html
 
<svg viewBox="25 25 50 50" class="box">
 
    <circle cx="50" cy="50" r="20" fill="none" class="circle"></circle>
 
</svg>
 
css
 
默认样式
 
.box {
 
    height: 200px;
 
    width: 200px;
 
    background: wheat;
 
}
 
.box .circle {
 
    stroke-width: 2;
 
    stroke: #409eff;
 
    stroke-linecap: round;
 
}
 
添加动画效果
 
/* 旋转动画 */
 
@keyframes rotate {
 
    to {
 
        transform: rotate(1turn)
 
    }
 
}
 
/* 弧线动画 */
 
/* 125 是圆的周长 */
 
@keyframes circle {
 
    0% {
 
 /* 状态1: 点 */
 
        stroke-dasharray: 1 125;
 
        stroke-dashoffset: 0;
 
    }
 
    50% {
 
 /* 状态2: 圆 */
 
        stroke-dasharray: 120, 125;
 
        stroke-dashoffset: 0;
 
    }
 
    to {
 
 /* 状态3: 点(向旋转的方向收缩) */
 
        stroke-dasharray: 120 125;
 
        stroke-dashoffset: -125px;
 
    }
 
}
 
.box {
 
  /* ...同上 */
 
  animation: rotate 2s linear infinite;
 
}
 
.circle {
 
  /* ...同上 */
 
  animation: circle 2s infinite;
 
}
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章