Bootstrap 5 加载效果实现方法

Bootstrap 5 加载效果实现方法

Bootstrap 5 提供了多种方式实现加载效果,主要包括使用内置的 Spinner 组件和自定义 CSS 动画。以下是具体实现方法:

使用内置 Spinner 组件

Bootstrap 5 内置了 Spinner 组件,通过添加 spinner-borderspinner-grow 类即可实现旋转或生长的加载动画。

旋转效果:

html 复制代码
<div class="spinner-border" role="status">
  <span class="visually-hidden">Loading...</span>
</div>

生长效果:

html 复制代码
<div class="spinner-grow" role="status">
  <span class="visually-hidden">Loading...</span>
</div>

可以通过添加颜色类改变样式:

html 复制代码
<div class="spinner-border text-primary" role="status">
  <span class="visually-hidden">Loading...</span>
</div>
调整大小

使用 spinner-border-smspinner-grow-sm 类调整大小:

html 复制代码
<div class="spinner-border spinner-border-sm" role="status">
  <span class="visually-hidden">Loading...</span>
</div>
按钮加载状态

在按钮中添加 Spinner:

html 复制代码
<button class="btn btn-primary" type="button" disabled>
  <span class="spinner-border spinner-border-sm" role="status" aria-hidden="true"></span>
  Loading...
</button>
自定义加载动画

通过 CSS 创建自定义加载效果:

css 复制代码
.custom-spinner {
  width: 3rem;
  height: 3rem;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: spin 0.75s linear infinite;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

HTML 中使用:

html 复制代码
<div class="custom-spinner" role="status">
  <span class="visually-hidden">Loading...</span>
</div>
全屏加载效果

结合 Bootstrap 的实用工具类实现全屏加载:

html 复制代码
<div class="d-flex justify-content-center align-items-center vh-100">
  <div class="spinner-border text-primary" style="width: 3rem; height: 3rem;" role="status">
    <span class="visually-hidden">Loading...</span>
  </div>
</div>

以上方法可以根据具体需求选择使用,Bootstrap 5 的 Spinner 组件提供了快速实现加载效果的方案,而自定义 CSS 则允许更灵活的样式控制。

相关推荐
汉克老师18 小时前
GESP2025年3月认证C++五级( 第三部分编程题(1、平均分配))
c++·算法·贪心算法·排序·gesp5级·gesp五级
智者知已应修善业21 小时前
【51单片机2个按键控制流水灯运行与暂停】2023-9-6
c++·经验分享·笔记·算法·51单片机
云泽8081 天前
C++11 核心特性全解:列表初始化、右值引用与移动语义实战
开发语言·c++
AI进化营-智能译站1 天前
ROS2 C++开发系列12-用多态与虚函数构建可扩展的ROS2机器人行为模块
开发语言·c++·ai·机器人
Morwit1 天前
QML组件之间的通信方案(暴露子组件)
c++·qt·职场和发展
qeen871 天前
【数据结构】建堆的时间复杂度讨论与TOP-K问题
c语言·数据结构·c++·学习·
图码1 天前
如何用多种方法判断字符串是否为回文?
开发语言·数据结构·c++·算法·阿里云·线性回归·数字雕刻
handler011 天前
Linux 内核剖析:进程优先级、上下文切换与 O(1) 调度算法
linux·运维·c语言·开发语言·c++·笔记·算法
zhouwy1131 天前
Linux进程与线程编程详解
linux·c++
A7bert7771 天前
【YOLOv8pose部署至RDK X5】模型训练→转换bin→Sunrise 5部署
c++·python·深度学习·yolo·目标检测