Spinners show that something is loading or working in the background. They help users know to wait.
Spinner components in Bootsrap
<div class="spinner-border" role="status"> <span class="visually-hidden">Loading...</span> </div>
Use spinner-border for a rotating border spinner.
Always include role="status" and a span with visually-hidden text for accessibility.
<div class="spinner-border" role="status"> <span class="visually-hidden">Loading...</span> </div>
text-primary class.<div class="spinner-border text-primary" role="status"> <span class="visually-hidden">Loading...</span> </div>
spinner-border-sm class.<div class="spinner-border spinner-border-sm" role="status"> <span class="visually-hidden">Loading...</span> </div>
spinner-grow and text-success.<div class="spinner-grow text-success" role="status"> <span class="visually-hidden">Loading...</span> </div>
This page shows three spinners centered vertically and horizontally. Each spinner uses different styles and colors to demonstrate Bootstrap spinner components. The visually-hidden text helps screen readers understand the spinner means loading.
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <title>Bootstrap Spinner Example</title> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet" /> </head> <body> <main class="d-flex flex-column align-items-center justify-content-center vh-100 gap-3"> <h1>Loading Data</h1> <div class="spinner-border text-primary" role="status" aria-label="Loading"> <span class="visually-hidden">Loading...</span> </div> <div class="spinner-grow text-success" role="status" aria-label="Loading"> <span class="visually-hidden">Loading...</span> </div> <div class="spinner-border spinner-border-sm text-danger" role="status" aria-label="Loading"> <span class="visually-hidden">Loading...</span> </div> </main> </body> </html>
Spinners do not show progress amount, only that something is happening.
Use aria-label or role="status" with hidden text for screen reader support.
Customize spinner size with spinner-border-sm or CSS if needed.
Spinners visually show loading or processing states.
Bootstrap offers spinner-border and spinner-grow styles.
Always add accessible text inside spinners for screen readers.