0

0

实现Bootstrap 5.3加载指示器平滑淡入淡出效果的教程

聖光之護

聖光之護

发布时间:2025-10-16 10:38:20

|

741人浏览过

|

来源于php中文网

原创

实现Bootstrap 5.3加载指示器平滑淡入淡出效果的教程

本教程详细讲解如何利用css的opacity和visibility属性结合transition,为bootstrap 5.3加载指示器(spinner)创建平滑的淡入淡出动画效果。文章通过示例代码展示了从初始化隐藏、加载时淡入显示到数据加载完成后淡出隐藏的完整实现过程,并提供了关键的css过渡技巧和注意事项,以提升用户体验。

在现代Web应用中,加载指示器(如Bootstrap Spinner)是提升用户体验的重要组成部分。它们在数据获取或处理过程中向用户提供视觉反馈,避免页面无响应的错觉。然而,直接通过修改元素的display属性来显示或隐藏加载指示器会导致突兀的视觉切换。为了实现更平滑、更专业的过渡效果,我们可以利用CSS的opacity和visibility属性配合transition来创建淡入淡出动画。

核心概念:利用CSS过渡实现平滑动画

实现元素的平滑淡入淡出效果,通常涉及opacity(不透明度)和visibility(可见性)这两个CSS属性。

  • opacity:控制元素的透明度,从0(完全透明)到1(完全不透明)。改变opacity可以触发平滑过渡。
  • visibility:控制元素的可见性,visible表示可见,hidden表示隐藏。hidden状态的元素不占用布局空间,也不响应事件。

单独使用opacity进行过渡会导致元素在完全透明后仍然占用空间并可能捕获事件。为了解决这个问题,我们引入visibility属性,并巧妙地利用其transition-delay。

关键技巧:visibility的延迟过渡

  • 淡出时: 当元素从可见变为隐藏时,我们希望opacity先完成从1到0的过渡,然后再将visibility设置为hidden。因此,visibility的过渡延迟应与opacity的过渡时长相同。
  • 淡入时: 当元素从隐藏变为可见时,我们希望visibility立即变为visible(transition-delay: 0s),这样元素就能开始响应事件并占用空间,然后opacity再从0过渡到1。

实现步骤

我们将通过一个模拟数据加载的场景来演示如何实现Bootstrap Spinner的淡入淡出效果。

怪兽AI数字人
怪兽AI数字人

数字人短视频创作,数字人直播,实时驱动数字人

下载

1. HTML 结构

首先,在HTML中设置Bootstrap Spinner和用于显示数据的容器。注意,初始时为Spinner添加hidespinner类,使其默认处于隐藏状态。




  
  
  Bootstrap Spinner 淡入淡出教程
  
  
  


  
加载中...

2. CSS 样式定义

定义#spinner的默认样式和hidespinner类,实现淡入淡出效果。

#spinner {
  position: fixed; /* 使用fixed确保即使页面滚动也能保持居中 */
  top: 50%;
  left: 50%;
  width: 3.5rem;
  height: 3.5rem;
  transform: translate(-50%, -50%); /* 居中显示 */
  z-index: 1050; /* 确保在其他内容之上 */

  /* 默认可见状态 */
  visibility: visible;
  opacity: 1;
  /* 淡入过渡:opacity立即开始,visibility无延迟 */
  transition: visibility 0s linear 0s, opacity 300ms ease-in-out;
}

#spinner.hidespinner {
  /* 隐藏状态 */
  visibility: hidden;
  opacity: 0;
  /* 淡出过渡:opacity先完成,visibility在300ms后变为hidden */
  transition: visibility 0s linear 300ms, opacity 300ms ease-in-out;
}

CSS说明:

  • position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%);:用于将Spinner固定并大致居中显示在视口上。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
CSS position定位有几种方式
CSS position定位有几种方式

有4种,分别是静态定位、相对定位、绝对定位和固定定位。更多关于CSS position定位有几种方式的内容,可以访问下面的文章。

81

2023.11.23

css3transition
css3transition

css3transition属性用于指定如何从一个CSS样式过渡到另一个CSS样式,本专题为大家提供transition相关的文章、相关下载和相关课程,大家可以免费体验。

231

2023.06.27

go语言 注释编码
go语言 注释编码

本专题整合了go语言注释、注释规范等等内容,阅读专题下面的文章了解更多详细内容。

1

2026.01.31

go语言 math包
go语言 math包

本专题整合了go语言math包相关内容,阅读专题下面的文章了解更多详细内容。

1

2026.01.31

go语言输入函数
go语言输入函数

本专题整合了go语言输入相关教程内容,阅读专题下面的文章了解更多详细内容。

1

2026.01.31

golang 循环遍历
golang 循环遍历

本专题整合了golang循环遍历相关教程,阅读专题下面的文章了解更多详细内容。

0

2026.01.31

Golang人工智能合集
Golang人工智能合集

本专题整合了Golang人工智能相关内容,阅读专题下面的文章了解更多详细内容。

1

2026.01.31

2026赚钱平台入口大全
2026赚钱平台入口大全

2026年最新赚钱平台入口汇总,涵盖任务众包、内容创作、电商运营、技能变现等多类正规渠道,助你轻松开启副业增收之路。阅读专题下面的文章了解更多详细内容。

72

2026.01.31

高干文在线阅读网站大全
高干文在线阅读网站大全

汇集热门1v1高干文免费阅读资源,涵盖都市言情、京味大院、军旅高干等经典题材,情节紧凑、人物鲜明。阅读专题下面的文章了解更多详细内容。

72

2026.01.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Sass 教程
Sass 教程

共14课时 | 0.8万人学习

Bootstrap 5教程
Bootstrap 5教程

共46课时 | 3.1万人学习

CSS教程
CSS教程

共754课时 | 25.7万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号