用css实现一个类似于elementUI中Loading组件有缺口的加载圆环

直接上代码:

HTML部分

html 复制代码
<div id="app">
  <div class="loaderContainer">
    <div class="loaderContainer__icon"></div>
    <p class="loaderContainer__text">加载中...</p>
  </div>
</div>

CSS部分

css 复制代码
html,
body,
#app {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.loaderContainer {
  display: flex;
  flex-direction: column;
  align-items: center;

  .loaderContainer__icon {
    width: 42px;
    height: 42px;
    color: #0057ff;
    border-radius: 50%;
    border: 3px solid #0057ff;
    border-top-color: #ffffff;
    animation: spin 1s infinite linear;
    background-color: transparent;
  }

  .loaderContainer__text {
    margin-top: 10px;
    font-size: 14px;
    color: #0057ff;
  }
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

核心思想

1,使用一个div,设置宽高相等、再设置border-radius为50%,形成一个圆;

2,通过border给圆的边框设置宽度和颜色,并通过border-top-color设置和当前背景色一致,实现有缺口的视觉效果。

3,将圆的background-color设置为transparent透明,形成一个空心的圆环。

4,定义spin动画,使圆环旋转,实现加载的视觉效果

相关推荐
尘世中一位迷途小书童18 分钟前
Vuetify Admin 后台管理系统
前端·前端框架·开源
参宿718 分钟前
图解Vue3 响应式,手动实现核心原理
前端·javascript·vue.js
2301_8012522225 分钟前
前端框架Vue(Vue 的挂载点与 data 数据对象)
java·前端·javascript·vue.js·前端框架
资讯第一线37 分钟前
《Windows Server 2022》 [2025年10月版 ] [官方IOS] 下载
前端
非凡ghost38 分钟前
EaseUS Fixo(易我视频照片修复)
前端·javascript·后端
非凡ghost40 分钟前
Avast Cleanup安卓版(手机清理优化)
前端·javascript·后端
豆苗学前端40 分钟前
长时间不操作自动退出登录(系统非活跃状态下自动登出机制的企业级设计方案)
前端·后端·面试
一乐小哥44 分钟前
用 AI 搞出 Chrome 版 “飞书 Command+K”!Figma AI 救了我的审美
前端·ai编程
非凡ghost1 小时前
Atlantis Word Processor(文字处理软件)
前端·javascript·后端
小时前端1 小时前
面试官:线上应用内存持续泄漏,你如何快速定位并止血?
前端·浏览器