Steps are used to guide users through complex processes, making them easier and more intuitive. Breaking a multi-step process into smaller parts and tracking progress along the way helps users complete it successfully.
Steps provide a clear visual representation of a user’s progress through a multi-step process. By showing what has been completed and what remains, steps enhance usability and encourage task completion.
To create a default progress tracker, use the .steps
class and define each step as a .step-item
. The active step clearly indicates the current position in the process.
<div class="steps">
<a href="#" class="step-item"> Step 1 </a>
<a href="#" class="step-item"> Step 2 </a>
<a href="#" class="step-item active"> Step 3 </a>
</div>
The example below demonstrates a simple progress tracker with four steps, where the third step is active.
<div class="steps">
<a href="#" class="step-item"> Step 1 </a>
<a href="#" class="step-item"> Step 2 </a>
<a href="#" class="step-item active"> Step 3 </a>
<span href="#" class="step-item"> Step 4 </span>
</div>
Add tooltips if you want to provide users with additional information about the steps they are expected to complete. Tooltips are displayed when a user hovers over a given step and help clarify what might not be clear from the interface.
To add a tooltip, use the data-bs-toggle="tooltip"
attribute and specify the tooltip content with the title
attribute.
<a href="#" class="step-item" data-bs-toggle="tooltip" data-bs-placement="top"
title="Step 1 description">
Step 1
</a>
The example below demonstrates a progress tracker with tooltips for each step.
<div class="steps">
<a href="#" class="step-item" data-bs-toggle="tooltip" data-bs-placement="top"
title="Step 1 description">
Step 1
</a>
<a href="#" class="step-item" data-bs-toggle="tooltip" data-bs-placement="top"
title="Step 2 description">
Step 2
</a>
<a href="#" class="step-item active" data-bs-toggle="tooltip"
data-bs-placement="top" title="Step 3 description">
Step 3
</a>
<span href="#" class="step-item" data-bs-toggle="tooltip"
data-bs-placement="top" title="Step 4 description">
Step 4
</span>
</div>
You can customize the default progress indicator by changing the color to one that better suits your design. Click here to see the range of available colors.
<div class="steps steps-green">...</div>
The example below demonstrates a progress tracker with two different color schemes.
<div class="steps steps-green">
<a href="#" class="step-item"> Step 1 </a>
<a href="#" class="step-item"> Step 2 </a>
<a href="#" class="step-item active"> Step 3 </a>
<span href="#" class="step-item"> Step 4 </span>
</div>
<div class="steps steps-red">
<a href="#" class="step-item"> Step 1 </a>
<a href="#" class="step-item"> Step 2 </a>
<a href="#" class="step-item active"> Step 3 </a>
<span href="#" class="step-item"> Step 4 </span>
</div>
For designs with limited space, use progress indicators without titles and add tooltips to provide the necessary details.
<div class="steps">
<a href="#" class="step-item" data-bs-toggle="tooltip" data-bs-placement="top"
title="Step 1 description"></a>
<a href="#" class="step-item" data-bs-toggle="tooltip" data-bs-placement="top"
title="Step 2 description"></a>
<a href="#" class="step-item active" data-bs-toggle="tooltip"
data-bs-placement="top" title="Step 3 description"></a>
<span href="#" class="step-item" data-bs-toggle="tooltip"
data-bs-placement="top" title="Step 4 description"></span>
</div>
Use the steps-counter
class to create a progress tracker with numbers instead of titles and change the color to customize it.
<div class="steps steps-counter">...</div>
The example below demonstrates a progress tracker with numbers and a different color scheme.
<div class="steps steps-counter">
<a href="#" class="step-item"></a>
<a href="#" class="step-item active"></a>
<span href="#" class="step-item"></span>
<span href="#" class="step-item"></span>
<span href="#" class="step-item"></span>
</div>