🔽 Bootstrap 5 – Dropdowns: Create Menus, Actions & More
🧲 Introduction – What Are Dropdowns in Bootstrap 5?
Dropdowns in Bootstrap 5 are toggleable menus that allow users to choose an option or perform an action. They’re perfect for navigation bars, buttons, forms, and toolbars. Fully responsive and customizable, they can be activated by click or hover using Bootstrap’s dropdown plugin.
🎯 In this guide, you’ll learn:
- How to create dropdown menus with buttons or links
- Position and align dropdowns
- Add headers, dividers, and active/disabled items
- Customize dropdown direction and behavior
✅ Example 1 – Basic Button Dropdown
<div class="dropdown">
<button class="btn btn-primary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
Dropdown Button
</button>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="#">Action</a></li>
<li><a class="dropdown-item" href="#">Another action</a></li>
<li><a class="dropdown-item" href="#">Something else here</a></li>
</ul>
</div>
🔍 Explanation:
Element/Class | Purpose |
---|---|
.dropdown | Parent container |
.btn.dropdown-toggle | Triggers dropdown toggle |
data-bs-toggle="dropdown" | Enables dropdown behavior |
.dropdown-menu | The dropdown list container |
.dropdown-item | Clickable list items |
✅ Example 2 – Dropdown in Navbar
<ul class="navbar-nav">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown">
Menu
</a>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="#">Link 1</a></li>
<li><a class="dropdown-item" href="#">Link 2</a></li>
</ul>
</li>
</ul>
🔍 Use Case:
- Adds navigation actions in a responsive navbar
✅ Example 3 – Dropdown Menu with Header & Divider
<ul class="dropdown-menu">
<li><h6 class="dropdown-header">Category</h6></li>
<li><a class="dropdown-item" href="#">Item 1</a></li>
<li><a class="dropdown-item" href="#">Item 2</a></li>
<li><hr class="dropdown-divider"></li>
<li><a class="dropdown-item disabled" href="#">Disabled</a></li>
</ul>
🔍 Components:
.dropdown-header
: Non-clickable label inside the dropdown.dropdown-divider
: Horizontal separator.disabled
: Grays out and disables an item
✅ Example 4 – Dropup & Dropend (Direction Control)
<!-- Dropup -->
<div class="btn-group dropup">
<button class="btn btn-secondary dropdown-toggle" data-bs-toggle="dropdown">Dropup</button>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="#">Up Item</a></li>
</ul>
</div>
<!-- Dropend -->
<div class="btn-group dropend">
<button class="btn btn-secondary dropdown-toggle" data-bs-toggle="dropdown">Dropend</button>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="#">Right Item</a></li>
</ul>
</div>
🔍 Direction Variants:
Class | Direction |
---|---|
.dropup | Opens upward |
.dropend | Opens right |
.dropstart | Opens left |
✅ Example 5 – Dropdown Alignment (Start / End)
<div class="dropdown">
<button class="btn btn-info dropdown-toggle" data-bs-toggle="dropdown">Align Right</button>
<ul class="dropdown-menu dropdown-menu-end">
<li><a class="dropdown-item" href="#">Aligned Right</a></li>
</ul>
</div>
🔍 Alignment Classes:
.dropdown-menu-start
: Default left-aligned.dropdown-menu-end
: Right-aligned to parent
🛠️ Best Practices for Bootstrap Dropdowns
Tip | Why It Helps |
---|---|
Use aria-expanded and aria-haspopup | Improves accessibility |
Avoid over-nesting dropdowns | Reduces complexity and improves performance |
Use headers/dividers for clarity | Organizes dropdown content |
Consider mobile interaction | Click, not hover, works best on touch devices |
Use dropdown-menu-end for right alignment | Good for responsive layouts |
📌 Summary – Simplify Action Menus with Bootstrap Dropdowns
Bootstrap 5 dropdowns are versatile and accessible menu components that enhance user interaction. Whether in toolbars, navbars, or form actions, they help declutter the UI and provide smooth user experiences.
🔍 Key Takeaways:
- Trigger dropdowns with
.dropdown-toggle
anddata-bs-toggle="dropdown"
- Add headers, dividers, and disabled items for better structure
- Use
.dropup
,.dropend
, and.dropdown-menu-end
to control positioning - Fully responsive and accessible out of the box
⚙️ Great for navigation, filters, user actions, and content toggling.
❓ FAQs – Bootstrap 5 Dropdowns
❓ Can I trigger a dropdown without Bootstrap JS?
❌ No. Bootstrap’s dropdown plugin is required for toggling functionality.
❓ How do I open a dropdown upwards or sideways?
✅ Use direction classes: .dropup
, .dropend
, or .dropstart
.
❓ Can I use links and buttons inside dropdowns?
✅ Yes! Use <a>
with .dropdown-item
or <button>
for action menus.
❓ Are dropdowns mobile-friendly?
✅ Yes. They’re triggered on click, which works well on touch devices.
Share Now :