Spinners
Indicate the loading state of a component or page.
Border spinner
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
<!-- Default spinner -->
<div class="spinner-border" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Gray spinner -->
<div class="spinner-border text-body-tertiary" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Primary spinner -->
<div class="spinner-border text-primary" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Secondary spinner -->
<div class="spinner-border text-secondary" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Success spinner -->
<div class="spinner-border text-success" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Danger spinner -->
<div class="spinner-border text-danger" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Warning spinner -->
<div class="spinner-border text-warning" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Info spinner -->
<div class="spinner-border text-info" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Light spinner -->
<div class="spinner-border text-light" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Dark spinner -->
<div class="spinner-border text-dark" role="status">
<span class="visually-hidden">Loading...</span>
</div>
Growing spinner
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
<!-- Default spinner -->
<div class="spinner-grow" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Gray spinner -->
<div class="spinner-grow text-body-tertiary" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Primary spinner -->
<div class="spinner-grow text-primary" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Secondary spinner -->
<div class="spinner-grow text-secondary" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Success spinner -->
<div class="spinner-grow text-success" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Danger spinner -->
<div class="spinner-grow text-danger" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Warning spinner -->
<div class="spinner-grow text-warning" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Info spinner -->
<div class="spinner-grow text-info" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Light spinner -->
<div class="spinner-grow text-light" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Dark spinner -->
<div class="spinner-grow text-dark" role="status">
<span class="visually-hidden">Loading...</span>
</div>
Sizing
Loading...
Loading...
Loading...
Loading...
<!-- Small border spinner -->
<div class="spinner-border spinner-border-sm" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Small growing spinner -->
<div class="spinner-grow spinner-grow-sm" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Custom size border spinner -->
<div class="spinner-border" style="width: 3rem; height: 3rem;" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Custom size growing spinner -->
<div class="spinner-grow" style="width: 3rem; height: 3rem;" role="status">
<span class="visually-hidden">Loading...</span>
</div>