Reveal secondary details in place with documented Button markup and Bootstrap's Collapse behavior.
Use .collapse for one section of content that should be hidden until the user asks for it. Connect the trigger to the content with data-bs-toggle="collapse" and data-bs-target or href, and keep the target id stable for aria-controls.
.collapse
data-bs-toggle="collapse"
data-bs-target
href
id
aria-controls
Use aria-expanded="false" when the panel starts closed and aria-expanded="true" when it starts open with .show. Bootstrap toggles .collapse, .collapsing, and .collapse.show during the transition, so keep padding on an inner wrapper instead of putting it directly on the collapsing element.
aria-expanded="false"
aria-expanded="true"
.show
.collapsing
.collapse.show
Use a button trigger for in-page disclosure whenever possible. Multiple triggers can point to the same target, and one trigger can target several panels with a selector, but keep labels specific so the user understands what will appear or disappear.
button
The trigger line stays fixed while details expand directly below without affecting horizontal measure.
1 2 3 4 5 6 7 8 9 10 11<div class="collapsible"> <div class="collapsible-header"> <h4 class="collapsible-title">Can we use this flow in operations?</h4> <button class="btn btn-ghost btn-icon-sm" type="button" aria-label="Toggle task details" data-bs-toggle="collapse" data-bs-target="#collapsible-basic" aria-expanded="false" aria-controls="collapsible-basic"> <i class="lucide lucide-chevrons-up-down" data-icon="inline-start" aria-hidden="true"></i> </button> </div> <div id="collapsible-basic" class="collapse"> <div class="collapsible-content">Yes. This pattern is safe for internal and client workflows, and no external attribution is needed.</div> </div> </div>
<div class="collapsible"> <div class="collapsible-header"> <h4 class="collapsible-title">Can we use this flow in operations?</h4> <button class="btn btn-ghost btn-icon-sm" type="button" aria-label="Toggle task details" data-bs-toggle="collapse" data-bs-target="#collapsible-basic" aria-expanded="false" aria-controls="collapsible-basic"> <i class="lucide lucide-chevrons-up-down" data-icon="inline-start" aria-hidden="true"></i> </button> </div> <div id="collapsible-basic" class="collapse"> <div class="collapsible-content">Yes. This pattern is safe for internal and client workflows, and no external attribution is needed.</div> </div> </div>
A compact header plus stacked metadata keeps this section readable even when expanded.
Owner: Platform Team. Access level: restricted.
Priority review for this artifact is scheduled weekly.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15<div class="collapsible"> <div class="collapsible-header"> <h4 class="collapsible-title">Product review details</h4> <button class="btn btn-ghost btn-icon-sm" type="button" aria-label="Toggle product details" data-bs-toggle="collapse" data-bs-target="#collapsible-product" aria-expanded="false" aria-controls="collapsible-product"> <i class="lucide lucide-chevrons-up-down" data-icon="inline-start" aria-hidden="true"></i> </button> </div> <div id="collapsible-product" class="collapse"> <div class="collapsible-content"> SKU: F-2042 · Warranty: 36 months. <p>Owner: Platform Team. Access level: restricted.</p> <p>Priority review for this artifact is scheduled weekly.</p> </div> </div> </div>
<div class="collapsible"> <div class="collapsible-header"> <h4 class="collapsible-title">Product review details</h4> <button class="btn btn-ghost btn-icon-sm" type="button" aria-label="Toggle product details" data-bs-toggle="collapse" data-bs-target="#collapsible-product" aria-expanded="false" aria-controls="collapsible-product"> <i class="lucide lucide-chevrons-up-down" data-icon="inline-start" aria-hidden="true"></i> </button> </div> <div id="collapsible-product" class="collapse"> <div class="collapsible-content"> SKU: F-2042 · Warranty: 36 months. <p>Owner: Platform Team. Access level: restricted.</p> <p>Priority review for this artifact is scheduled weekly.</p> </div> </div> </div>
Start open when the first render should show supporting details immediately.
1 2 3 4 5 6 7 8 9 10 11<div class="collapsible"> <div class="collapsible-header"> <h4 class="collapsible-title">Billing freeze window</h4> <button class="btn btn-ghost btn-icon-sm" type="button" aria-label="Toggle billing window details" data-bs-toggle="collapse" data-bs-target="#collapsible-open" aria-expanded="true" aria-controls="collapsible-open"> <i class="lucide lucide-chevrons-up-down" data-icon="inline-start" aria-hidden="true"></i> </button> </div> <div id="collapsible-open" class="collapse show"> <div class="collapsible-content">Current period locked. Manual review requested for exceptions only.</div> </div> </div>
<div class="collapsible"> <div class="collapsible-header"> <h4 class="collapsible-title">Billing freeze window</h4> <button class="btn btn-ghost btn-icon-sm" type="button" aria-label="Toggle billing window details" data-bs-toggle="collapse" data-bs-target="#collapsible-open" aria-expanded="true" aria-controls="collapsible-open"> <i class="lucide lucide-chevrons-up-down" data-icon="inline-start" aria-hidden="true"></i> </button> </div> <div id="collapsible-open" class="collapse show"> <div class="collapsible-content">Current period locked. Manual review requested for exceptions only.</div> </div> </div>
Compare RTL behavior for task and workflow examples across Arabic, Hebrew, and English content.
1 2 3 4 5 6 7 8 9 10 11 12 13<div class="w-100" dir="rtl"> <div class="collapsible"> <div class="collapsible-header"> <h4 class="collapsible-title">المهمة: مراجعة يومية</h4> <button class="btn btn-ghost btn-icon-sm" type="button" aria-label="إظهار تفاصيل المهمة" data-bs-toggle="collapse" data-bs-target="#collapsible-rtl" aria-expanded="false" aria-controls="collapsible-rtl"> <i class="lucide lucide-chevrons-up-down" data-icon="inline-start" aria-hidden="true"></i> </button> </div> <div id="collapsible-rtl" class="collapse"> <div class="collapsible-content">مُسندة إلى أحمد · الموعد 17:00 · الحالة: بانتظار المراجعة.</div> </div> </div> </div>
<div class="w-100" dir="rtl"> <div class="collapsible"> <div class="collapsible-header"> <h4 class="collapsible-title">المهمة: مراجعة يومية</h4> <button class="btn btn-ghost btn-icon-sm" type="button" aria-label="إظهار تفاصيل المهمة" data-bs-toggle="collapse" data-bs-target="#collapsible-rtl" aria-expanded="false" aria-controls="collapsible-rtl"> <i class="lucide lucide-chevrons-up-down" data-icon="inline-start" aria-hidden="true"></i> </button> </div> <div id="collapsible-rtl" class="collapse"> <div class="collapsible-content">مُسندة إلى أحمد · الموعد 17:00 · الحالة: بانتظار المراجعة.</div> </div> </div> </div>
1 2 3 4 5 6 7 8 9 10 11 12 13<div class="w-100" dir="rtl"> <div class="collapsible"> <div class="collapsible-header"> <h4 class="collapsible-title">משימה: ביקורת יומית</h4> <button class="btn btn-ghost btn-icon-sm" type="button" aria-label="הצג פרטי משימה" data-bs-toggle="collapse" data-bs-target="#collapsible-rtl-hebrew" aria-expanded="false" aria-controls="collapsible-rtl-hebrew"> <i class="lucide lucide-chevrons-up-down" data-icon="inline-start" aria-hidden="true"></i> </button> </div> <div id="collapsible-rtl-hebrew" class="collapse"> <div class="collapsible-content">מוקצה למיכל · מועד 17:00 · סטטוס: ממתין לבדיקה.</div> </div> </div> </div>
<div class="w-100" dir="rtl"> <div class="collapsible"> <div class="collapsible-header"> <h4 class="collapsible-title">משימה: ביקורת יומית</h4> <button class="btn btn-ghost btn-icon-sm" type="button" aria-label="הצג פרטי משימה" data-bs-toggle="collapse" data-bs-target="#collapsible-rtl-hebrew" aria-expanded="false" aria-controls="collapsible-rtl-hebrew"> <i class="lucide lucide-chevrons-up-down" data-icon="inline-start" aria-hidden="true"></i> </button> </div> <div id="collapsible-rtl-hebrew" class="collapse"> <div class="collapsible-content">מוקצה למיכל · מועד 17:00 · סטטוס: ממתין לבדיקה.</div> </div> </div> </div>
1 2 3 4 5 6 7 8 9 10 11 12 13<div class="w-100" dir="ltr"> <div class="collapsible"> <div class="collapsible-header"> <h4 class="collapsible-title">Task: Daily audit sync</h4> <button class="btn btn-ghost btn-icon-sm" type="button" aria-label="Show task details" data-bs-toggle="collapse" data-bs-target="#collapsible-rtl-english" aria-expanded="false" aria-controls="collapsible-rtl-english"> <i class="lucide lucide-chevrons-up-down" data-icon="inline-start" aria-hidden="true"></i> </button> </div> <div id="collapsible-rtl-english" class="collapse"> <div class="collapsible-content">Assigned to Support Lead · Due Thu 5 PM · Status: Pending review.</div> </div> </div> </div>
<div class="w-100" dir="ltr"> <div class="collapsible"> <div class="collapsible-header"> <h4 class="collapsible-title">Task: Daily audit sync</h4> <button class="btn btn-ghost btn-icon-sm" type="button" aria-label="Show task details" data-bs-toggle="collapse" data-bs-target="#collapsible-rtl-english" aria-expanded="false" aria-controls="collapsible-rtl-english"> <i class="lucide lucide-chevrons-up-down" data-icon="inline-start" aria-hidden="true"></i> </button> </div> <div id="collapsible-rtl-english" class="collapse"> <div class="collapsible-content">Assigned to Support Lead · Due Thu 5 PM · Status: Pending review.</div> </div> </div> </div>
For Bootstrap's Collapse plugin behavior and accessibility notes, see the Bootstrap Collapse documentation.
No matching pages.
Restore the default appearance.