Skip to content

Commit 2aedf0f

Browse files
committed
docs(accordion): add nested accordion example
Closes #41895
1 parent 41ceb03 commit 2aedf0f

1 file changed

Lines changed: 57 additions & 0 deletions

File tree

site/src/content/docs/components/accordion.mdx

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,63 @@ Omit the `data-bs-parent` attribute on each `.accordion-collapse` to make accord
140140
</div>
141141
</div>`} />
142142

143+
### Nested
144+
145+
Accordions can be nested by placing one accordion inside the `.accordion-body` of another. The `data-bs-parent` attribute on the nested `.accordion-collapse` elements must reference the nested accordion’s container (not the outer one), so that opening or closing nested items doesn’t affect the parent accordion’s state.
146+
147+
<Example code={`<div class="accordion" id="accordionNestingExample">
148+
<div class="accordion-item">
149+
<h2 class="accordion-header">
150+
<button class="accordion-button" type="button" data-bs-toggle="collapse" data-bs-target="#nestingCollapseOne" aria-expanded="true" aria-controls="nestingCollapseOne">
151+
Parent Accordion Item #1
152+
</button>
153+
</h2>
154+
<div id="nestingCollapseOne" class="accordion-collapse collapse show" data-bs-parent="#accordionNestingExample">
155+
<div class="accordion-body">
156+
<strong>This is the first parent item’s accordion body.</strong> It contains another, nested accordion.
157+
<div class="accordion mt-3" id="accordionNestedExample">
158+
<div class="accordion-item">
159+
<h2 class="accordion-header">
160+
<button class="accordion-button" type="button" data-bs-toggle="collapse" data-bs-target="#nestedCollapseOne" aria-expanded="true" aria-controls="nestedCollapseOne">
161+
Nested Accordion Item #1
162+
</button>
163+
</h2>
164+
<div id="nestedCollapseOne" class="accordion-collapse collapse show" data-bs-parent="#accordionNestedExample">
165+
<div class="accordion-body">
166+
<strong>This is the first nested item’s accordion body.</strong> Note how its <code>data-bs-parent</code> targets the nested accordion, not the outer one.
167+
</div>
168+
</div>
169+
</div>
170+
<div class="accordion-item">
171+
<h2 class="accordion-header">
172+
<button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#nestedCollapseTwo" aria-expanded="false" aria-controls="nestedCollapseTwo">
173+
Nested Accordion Item #2
174+
</button>
175+
</h2>
176+
<div id="nestedCollapseTwo" class="accordion-collapse collapse" data-bs-parent="#accordionNestedExample">
177+
<div class="accordion-body">
178+
<strong>This is the second nested item’s accordion body.</strong>
179+
</div>
180+
</div>
181+
</div>
182+
</div>
183+
</div>
184+
</div>
185+
</div>
186+
<div class="accordion-item">
187+
<h2 class="accordion-header">
188+
<button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#nestingCollapseTwo" aria-expanded="false" aria-controls="nestingCollapseTwo">
189+
Parent Accordion Item #2
190+
</button>
191+
</h2>
192+
<div id="nestingCollapseTwo" class="accordion-collapse collapse" data-bs-parent="#accordionNestingExample">
193+
<div class="accordion-body">
194+
<strong>This is the second parent item’s accordion body.</strong>
195+
</div>
196+
</div>
197+
</div>
198+
</div>`} />
199+
143200
## Accessibility
144201

145202
Please read the [collapse accessibility section]([[docsref:/components/collapse#accessibility]]) for more information.

0 commit comments

Comments
 (0)