Bootstrap 5.3.8 • Chapter 35 • Responsive LTR + RTL
Accordion and Collapse
Every topic includes its own Bootstrap coding example, explanation, ten teaching examples, expected result, practice, and responsive Persian/Arabic checks.
35.1 accordion
accordion is part of Bootstrap 5.3.8 covered in Chapter 35. Read the Bootstrap class names as a layer over CSS layout, spacing, components, utilities, and JavaScript behavior rather than as magic syntax. The example uses Bootstrap classes or APIs directly so you can connect the class name to its visual or interactive result.
For accordion in Chapter 35, inspect the DOM structure, Bootstrap class names, responsive breakpoint, and any data-bs attributes or JavaScript initialization. When Google Translate is active, also verify that longer labels wrap and the correct LTR or RTL Bootstrap stylesheet is enabled.
Test accordion at phone, tablet, laptop, and wide-screen sizes. Then translate the example to Persian and Arabic, increase browser zoom, and inspect whether rows, columns, forms, menus, overlays, and labels remain inside the viewport.
Concept in plain language
accordion is part of Bootstrap 5.3.8 covered in Chapter 35. Read the Bootstrap class names as a layer over CSS layout, spacing, components, utilities, and JavaScript behavior rather than as magic syntax.
10 teaching examples
Example 1: Minimal component
Build the smallest lesson page that demonstrates accordion. Keep the Bootstrap classes visible in the markup and explain which class provides the behavior. Chapter 35, topic 1, example 1.
Example 2: Responsive variation
Add a breakpoint-specific class to the admin page example for accordion. Compare the mobile layout with the tablet or desktop layout. Chapter 35, topic 1, example 2.
Example 3: Long translation
Replace a short English label in the booking page with a much longer translated label while using accordion. Confirm wrapping does not widen the viewport. Chapter 35, topic 1, example 3.
Example 4: Persian test
Translate the course page to Persian. Verify start/end spacing, text alignment, component direction, and that the Bootstrap RTL stylesheet is active. Chapter 35, topic 1, example 4.
Example 5: Arabic test
Translate the dashboard to Arabic. Check buttons, forms, dropdowns, navigation, and offcanvas placement for correct RTL behavior. Chapter 35, topic 1, example 5.
Example 6: Accessibility review
Use accordion in the profile screen and verify semantic HTML, accessible names, keyboard interaction, focus visibility, and status messaging. Chapter 35, topic 1, example 6.
Example 7: Content stress
Add long text, nested controls, wide media, and narrow viewport width to the checkout. Adjust the Bootstrap structure without hiding meaningful content. Chapter 35, topic 1, example 7.
Example 8: Utility comparison
Rebuild one part of the contact form using Bootstrap utilities instead of custom CSS, then compare readability and maintainability. Chapter 35, topic 1, example 8.
Example 9: JavaScript-state test
If accordion uses Bootstrap JavaScript, test open, close, focus, disposal, and repeated initialization in the article. If not, verify the example works without JavaScript. Chapter 35, topic 1, example 9.
Example 10: Production review
Review accordion in the settings panel for breakpoints, RTL, Google Translate, zoom, keyboard use, performance, and maintainable class choices. Chapter 35, topic 1, example 10.
Bootstrap coding example
<div class="accordion" id="a"><div class="accordion-item"><h2 class="accordion-header"><button class="accordion-button" data-bs-toggle="collapse" data-bs-target="#c">Question</button></h2><div id="c" class="accordion-collapse collapse show" data-bs-parent="#a"><div class="accordion-body">Answer</div></div></div></div>Step-by-step code explanation
- Identify the Bootstrap class, data attribute, or JavaScript API used for accordion.
- Read the HTML nesting first. Bootstrap components often depend on a specific relationship between wrappers, controls, and content.
- Resize the viewport and observe which responsive classes become active at each breakpoint.
- Translate the visible content. Long labels must wrap, .row children must be able to shrink, and tables should use a local responsive wrapper instead of widening the page.
- Switch to Persian or Arabic and confirm that the page has dir=rtl, Bootstrap's RTL stylesheet is active, start/end utilities behave correctly, and code examples remain LTR.
Expected result: The browser demonstrates accordion with responsive behavior. Persian and Arabic use RTL layout without creating page-wide horizontal scrolling; genuinely wide code or tables scroll locally.
Practice exercise
Build a new Bootstrap 5.3.8 example for accordion from Chapter 35. Test it at 320px, 768px, and desktop width, translate its visible text to Persian and Arabic, and explain which Bootstrap classes or JavaScript API create the final behavior.
35.2 Accordion Items
Accordion Items is part of Bootstrap 5.3.8 covered in Chapter 35. Read the Bootstrap class names as a layer over CSS layout, spacing, components, utilities, and JavaScript behavior rather than as magic syntax. The example uses Bootstrap classes or APIs directly so you can connect the class name to its visual or interactive result.
For Accordion Items in Chapter 35, inspect the DOM structure, Bootstrap class names, responsive breakpoint, and any data-bs attributes or JavaScript initialization. When Google Translate is active, also verify that longer labels wrap and the correct LTR or RTL Bootstrap stylesheet is enabled.
Test Accordion Items at phone, tablet, laptop, and wide-screen sizes. Then translate the example to Persian and Arabic, increase browser zoom, and inspect whether rows, columns, forms, menus, overlays, and labels remain inside the viewport.
Concept in plain language
Accordion Items is part of Bootstrap 5.3.8 covered in Chapter 35. Read the Bootstrap class names as a layer over CSS layout, spacing, components, utilities, and JavaScript behavior rather than as magic syntax.
10 teaching examples
Example 1: Minimal component
Build the smallest booking page that demonstrates Accordion Items. Keep the Bootstrap classes visible in the markup and explain which class provides the behavior. Chapter 35, topic 2, example 1.
Example 2: Responsive variation
Add a breakpoint-specific class to the course page example for Accordion Items. Compare the mobile layout with the tablet or desktop layout. Chapter 35, topic 2, example 2.
Example 3: Long translation
Replace a short English label in the dashboard with a much longer translated label while using Accordion Items. Confirm wrapping does not widen the viewport. Chapter 35, topic 2, example 3.
Example 4: Persian test
Translate the profile screen to Persian. Verify start/end spacing, text alignment, component direction, and that the Bootstrap RTL stylesheet is active. Chapter 35, topic 2, example 4.
Example 5: Arabic test
Translate the checkout to Arabic. Check buttons, forms, dropdowns, navigation, and offcanvas placement for correct RTL behavior. Chapter 35, topic 2, example 5.
Example 6: Accessibility review
Use Accordion Items in the contact form and verify semantic HTML, accessible names, keyboard interaction, focus visibility, and status messaging. Chapter 35, topic 2, example 6.
Example 7: Content stress
Add long text, nested controls, wide media, and narrow viewport width to the article. Adjust the Bootstrap structure without hiding meaningful content. Chapter 35, topic 2, example 7.
Example 8: Utility comparison
Rebuild one part of the settings panel using Bootstrap utilities instead of custom CSS, then compare readability and maintainability. Chapter 35, topic 2, example 8.
Example 9: JavaScript-state test
If Accordion Items uses Bootstrap JavaScript, test open, close, focus, disposal, and repeated initialization in the gallery. If not, verify the example works without JavaScript. Chapter 35, topic 2, example 9.
Example 10: Production review
Review Accordion Items in the support page for breakpoints, RTL, Google Translate, zoom, keyboard use, performance, and maintainable class choices. Chapter 35, topic 2, example 10.
Bootstrap coding example
<div class="accordion-item"><h2 class="accordion-header"><button class="accordion-button collapsed" data-bs-toggle="collapse" data-bs-target="#item1">Topic</button></h2><div id="item1" class="accordion-collapse collapse"><div class="accordion-body">Content</div></div></div>Step-by-step code explanation
- Identify the Bootstrap class, data attribute, or JavaScript API used for Accordion Items.
- Read the HTML nesting first. Bootstrap components often depend on a specific relationship between wrappers, controls, and content.
- Resize the viewport and observe which responsive classes become active at each breakpoint.
- Translate the visible content. Long labels must wrap, .row children must be able to shrink, and tables should use a local responsive wrapper instead of widening the page.
- Switch to Persian or Arabic and confirm that the page has dir=rtl, Bootstrap's RTL stylesheet is active, start/end utilities behave correctly, and code examples remain LTR.
Expected result: The browser demonstrates Accordion Items with responsive behavior. Persian and Arabic use RTL layout without creating page-wide horizontal scrolling; genuinely wide code or tables scroll locally.
Practice exercise
Build a new Bootstrap 5.3.8 example for Accordion Items from Chapter 35. Test it at 320px, 768px, and desktop width, translate its visible text to Persian and Arabic, and explain which Bootstrap classes or JavaScript API create the final behavior.
35.3 Always-Open Accordion
Always-Open Accordion is part of Bootstrap 5.3.8 covered in Chapter 35. Read the Bootstrap class names as a layer over CSS layout, spacing, components, utilities, and JavaScript behavior rather than as magic syntax. The example uses Bootstrap classes or APIs directly so you can connect the class name to its visual or interactive result.
For Always-Open Accordion in Chapter 35, inspect the DOM structure, Bootstrap class names, responsive breakpoint, and any data-bs attributes or JavaScript initialization. When Google Translate is active, also verify that longer labels wrap and the correct LTR or RTL Bootstrap stylesheet is enabled.
Test Always-Open Accordion at phone, tablet, laptop, and wide-screen sizes. Then translate the example to Persian and Arabic, increase browser zoom, and inspect whether rows, columns, forms, menus, overlays, and labels remain inside the viewport.
Concept in plain language
Always-Open Accordion is part of Bootstrap 5.3.8 covered in Chapter 35. Read the Bootstrap class names as a layer over CSS layout, spacing, components, utilities, and JavaScript behavior rather than as magic syntax.
10 teaching examples
Example 1: Minimal component
Build the smallest dashboard that demonstrates Always-Open Accordion. Keep the Bootstrap classes visible in the markup and explain which class provides the behavior. Chapter 35, topic 3, example 1.
Example 2: Responsive variation
Add a breakpoint-specific class to the profile screen example for Always-Open Accordion. Compare the mobile layout with the tablet or desktop layout. Chapter 35, topic 3, example 2.
Example 3: Long translation
Replace a short English label in the checkout with a much longer translated label while using Always-Open Accordion. Confirm wrapping does not widen the viewport. Chapter 35, topic 3, example 3.
Example 4: Persian test
Translate the contact form to Persian. Verify start/end spacing, text alignment, component direction, and that the Bootstrap RTL stylesheet is active. Chapter 35, topic 3, example 4.
Example 5: Arabic test
Translate the article to Arabic. Check buttons, forms, dropdowns, navigation, and offcanvas placement for correct RTL behavior. Chapter 35, topic 3, example 5.
Example 6: Accessibility review
Use Always-Open Accordion in the settings panel and verify semantic HTML, accessible names, keyboard interaction, focus visibility, and status messaging. Chapter 35, topic 3, example 6.
Example 7: Content stress
Add long text, nested controls, wide media, and narrow viewport width to the gallery. Adjust the Bootstrap structure without hiding meaningful content. Chapter 35, topic 3, example 7.
Example 8: Utility comparison
Rebuild one part of the support page using Bootstrap utilities instead of custom CSS, then compare readability and maintainability. Chapter 35, topic 3, example 8.
Example 9: JavaScript-state test
If Always-Open Accordion uses Bootstrap JavaScript, test open, close, focus, disposal, and repeated initialization in the event page. If not, verify the example works without JavaScript. Chapter 35, topic 3, example 9.
Example 10: Production review
Review Always-Open Accordion in the analytics page for breakpoints, RTL, Google Translate, zoom, keyboard use, performance, and maintainable class choices. Chapter 35, topic 3, example 10.
Bootstrap coding example
<div class="accordion" id="open"><div class="accordion-item"><button class="accordion-button" data-bs-toggle="collapse" data-bs-target="#o1">One</button><div id="o1" class="accordion-collapse collapse show"><div class="accordion-body">Open independently</div></div></div></div>Step-by-step code explanation
- Identify the Bootstrap class, data attribute, or JavaScript API used for Always-Open Accordion.
- Read the HTML nesting first. Bootstrap components often depend on a specific relationship between wrappers, controls, and content.
- Resize the viewport and observe which responsive classes become active at each breakpoint.
- Translate the visible content. Long labels must wrap, .row children must be able to shrink, and tables should use a local responsive wrapper instead of widening the page.
- Switch to Persian or Arabic and confirm that the page has dir=rtl, Bootstrap's RTL stylesheet is active, start/end utilities behave correctly, and code examples remain LTR.
Expected result: The browser demonstrates Always-Open Accordion with responsive behavior. Persian and Arabic use RTL layout without creating page-wide horizontal scrolling; genuinely wide code or tables scroll locally.
Practice exercise
Build a new Bootstrap 5.3.8 example for Always-Open Accordion from Chapter 35. Test it at 320px, 768px, and desktop width, translate its visible text to Persian and Arabic, and explain which Bootstrap classes or JavaScript API create the final behavior.
35.4 collapse
collapse is part of Bootstrap 5.3.8 covered in Chapter 35. Read the Bootstrap class names as a layer over CSS layout, spacing, components, utilities, and JavaScript behavior rather than as magic syntax. The example uses Bootstrap classes or APIs directly so you can connect the class name to its visual or interactive result.
For collapse in Chapter 35, inspect the DOM structure, Bootstrap class names, responsive breakpoint, and any data-bs attributes or JavaScript initialization. When Google Translate is active, also verify that longer labels wrap and the correct LTR or RTL Bootstrap stylesheet is enabled.
Test collapse at phone, tablet, laptop, and wide-screen sizes. Then translate the example to Persian and Arabic, increase browser zoom, and inspect whether rows, columns, forms, menus, overlays, and labels remain inside the viewport.
Concept in plain language
collapse is part of Bootstrap 5.3.8 covered in Chapter 35. Read the Bootstrap class names as a layer over CSS layout, spacing, components, utilities, and JavaScript behavior rather than as magic syntax.
10 teaching examples
Example 1: Minimal component
Build the smallest checkout that demonstrates collapse. Keep the Bootstrap classes visible in the markup and explain which class provides the behavior. Chapter 35, topic 4, example 1.
Example 2: Responsive variation
Add a breakpoint-specific class to the contact form example for collapse. Compare the mobile layout with the tablet or desktop layout. Chapter 35, topic 4, example 2.
Example 3: Long translation
Replace a short English label in the article with a much longer translated label while using collapse. Confirm wrapping does not widen the viewport. Chapter 35, topic 4, example 3.
Example 4: Persian test
Translate the settings panel to Persian. Verify start/end spacing, text alignment, component direction, and that the Bootstrap RTL stylesheet is active. Chapter 35, topic 4, example 4.
Example 5: Arabic test
Translate the gallery to Arabic. Check buttons, forms, dropdowns, navigation, and offcanvas placement for correct RTL behavior. Chapter 35, topic 4, example 5.
Example 6: Accessibility review
Use collapse in the support page and verify semantic HTML, accessible names, keyboard interaction, focus visibility, and status messaging. Chapter 35, topic 4, example 6.
Example 7: Content stress
Add long text, nested controls, wide media, and narrow viewport width to the event page. Adjust the Bootstrap structure without hiding meaningful content. Chapter 35, topic 4, example 7.
Example 8: Utility comparison
Rebuild one part of the analytics page using Bootstrap utilities instead of custom CSS, then compare readability and maintainability. Chapter 35, topic 4, example 8.
Example 9: JavaScript-state test
If collapse uses Bootstrap JavaScript, test open, close, focus, disposal, and repeated initialization in the account page. If not, verify the example works without JavaScript. Chapter 35, topic 4, example 9.
Example 10: Production review
Review collapse in the lesson page for breakpoints, RTL, Google Translate, zoom, keyboard use, performance, and maintainable class choices. Chapter 35, topic 4, example 10.
Bootstrap coding example
<button class="btn btn-primary" data-bs-toggle="collapse" data-bs-target="#details">Toggle</button><div id="details" class="collapse mt-2">Collapsed content</div>Step-by-step code explanation
- Identify the Bootstrap class, data attribute, or JavaScript API used for collapse.
- Read the HTML nesting first. Bootstrap components often depend on a specific relationship between wrappers, controls, and content.
- Resize the viewport and observe which responsive classes become active at each breakpoint.
- Translate the visible content. Long labels must wrap, .row children must be able to shrink, and tables should use a local responsive wrapper instead of widening the page.
- Switch to Persian or Arabic and confirm that the page has dir=rtl, Bootstrap's RTL stylesheet is active, start/end utilities behave correctly, and code examples remain LTR.
Expected result: The browser demonstrates collapse with responsive behavior. Persian and Arabic use RTL layout without creating page-wide horizontal scrolling; genuinely wide code or tables scroll locally.
Practice exercise
Build a new Bootstrap 5.3.8 example for collapse from Chapter 35. Test it at 320px, 768px, and desktop width, translate its visible text to Persian and Arabic, and explain which Bootstrap classes or JavaScript API create the final behavior.
35.5 Multiple Collapse Targets
Multiple Collapse Targets is part of Bootstrap 5.3.8 covered in Chapter 35. Read the Bootstrap class names as a layer over CSS layout, spacing, components, utilities, and JavaScript behavior rather than as magic syntax. The example uses Bootstrap classes or APIs directly so you can connect the class name to its visual or interactive result.
For Multiple Collapse Targets in Chapter 35, inspect the DOM structure, Bootstrap class names, responsive breakpoint, and any data-bs attributes or JavaScript initialization. When Google Translate is active, also verify that longer labels wrap and the correct LTR or RTL Bootstrap stylesheet is enabled.
Test Multiple Collapse Targets at phone, tablet, laptop, and wide-screen sizes. Then translate the example to Persian and Arabic, increase browser zoom, and inspect whether rows, columns, forms, menus, overlays, and labels remain inside the viewport.
Concept in plain language
Multiple Collapse Targets is part of Bootstrap 5.3.8 covered in Chapter 35. Read the Bootstrap class names as a layer over CSS layout, spacing, components, utilities, and JavaScript behavior rather than as magic syntax.
10 teaching examples
Example 1: Minimal component
Build the smallest article that demonstrates Multiple Collapse Targets. Keep the Bootstrap classes visible in the markup and explain which class provides the behavior. Chapter 35, topic 5, example 1.
Example 2: Responsive variation
Add a breakpoint-specific class to the settings panel example for Multiple Collapse Targets. Compare the mobile layout with the tablet or desktop layout. Chapter 35, topic 5, example 2.
Example 3: Long translation
Replace a short English label in the gallery with a much longer translated label while using Multiple Collapse Targets. Confirm wrapping does not widen the viewport. Chapter 35, topic 5, example 3.
Example 4: Persian test
Translate the support page to Persian. Verify start/end spacing, text alignment, component direction, and that the Bootstrap RTL stylesheet is active. Chapter 35, topic 5, example 4.
Example 5: Arabic test
Translate the event page to Arabic. Check buttons, forms, dropdowns, navigation, and offcanvas placement for correct RTL behavior. Chapter 35, topic 5, example 5.
Example 6: Accessibility review
Use Multiple Collapse Targets in the analytics page and verify semantic HTML, accessible names, keyboard interaction, focus visibility, and status messaging. Chapter 35, topic 5, example 6.
Example 7: Content stress
Add long text, nested controls, wide media, and narrow viewport width to the account page. Adjust the Bootstrap structure without hiding meaningful content. Chapter 35, topic 5, example 7.
Example 8: Utility comparison
Rebuild one part of the lesson page using Bootstrap utilities instead of custom CSS, then compare readability and maintainability. Chapter 35, topic 5, example 8.
Example 9: JavaScript-state test
If Multiple Collapse Targets uses Bootstrap JavaScript, test open, close, focus, disposal, and repeated initialization in the admin page. If not, verify the example works without JavaScript. Chapter 35, topic 5, example 9.
Example 10: Production review
Review Multiple Collapse Targets in the booking page for breakpoints, RTL, Google Translate, zoom, keyboard use, performance, and maintainable class choices. Chapter 35, topic 5, example 10.
Bootstrap coding example
<button class="btn btn-primary" data-bs-toggle="collapse" data-bs-target=".multi">Toggle both</button><div class="multi collapse">A</div><div class="multi collapse">B</div>Step-by-step code explanation
- Identify the Bootstrap class, data attribute, or JavaScript API used for Multiple Collapse Targets.
- Read the HTML nesting first. Bootstrap components often depend on a specific relationship between wrappers, controls, and content.
- Resize the viewport and observe which responsive classes become active at each breakpoint.
- Translate the visible content. Long labels must wrap, .row children must be able to shrink, and tables should use a local responsive wrapper instead of widening the page.
- Switch to Persian or Arabic and confirm that the page has dir=rtl, Bootstrap's RTL stylesheet is active, start/end utilities behave correctly, and code examples remain LTR.
Expected result: The browser demonstrates Multiple Collapse Targets with responsive behavior. Persian and Arabic use RTL layout without creating page-wide horizontal scrolling; genuinely wide code or tables scroll locally.
Practice exercise
Build a new Bootstrap 5.3.8 example for Multiple Collapse Targets from Chapter 35. Test it at 320px, 768px, and desktop width, translate its visible text to Persian and Arabic, and explain which Bootstrap classes or JavaScript API create the final behavior.
Chapter 35 review — 10 questions and answers
1. What should you inspect when accordion does not behave as expected?
Answer: Check the Bootstrap classes, breakpoint, DOM structure, loaded CSS version, and any JavaScript data attributes involved in accordion. Then inspect computed styles to see which declaration wins.
2. How should accordion be tested before publishing?
Answer: Test accordion on narrow and wide screens, with long translated text, in Persian and Arabic RTL mode, at increased zoom, and with keyboard navigation where the component is interactive.
3. What should you inspect when Accordion Items does not behave as expected?
Answer: Check the Bootstrap classes, breakpoint, DOM structure, loaded CSS version, and any JavaScript data attributes involved in Accordion Items. Then inspect computed styles to see which declaration wins.
4. How should Accordion Items be tested before publishing?
Answer: Test Accordion Items on narrow and wide screens, with long translated text, in Persian and Arabic RTL mode, at increased zoom, and with keyboard navigation where the component is interactive.
5. What should you inspect when Always-Open Accordion does not behave as expected?
Answer: Check the Bootstrap classes, breakpoint, DOM structure, loaded CSS version, and any JavaScript data attributes involved in Always-Open Accordion. Then inspect computed styles to see which declaration wins.
6. How should Always-Open Accordion be tested before publishing?
Answer: Test Always-Open Accordion on narrow and wide screens, with long translated text, in Persian and Arabic RTL mode, at increased zoom, and with keyboard navigation where the component is interactive.
7. What should you inspect when collapse does not behave as expected?
Answer: Check the Bootstrap classes, breakpoint, DOM structure, loaded CSS version, and any JavaScript data attributes involved in collapse. Then inspect computed styles to see which declaration wins.
8. How should collapse be tested before publishing?
Answer: Test collapse on narrow and wide screens, with long translated text, in Persian and Arabic RTL mode, at increased zoom, and with keyboard navigation where the component is interactive.
9. What should you inspect when Multiple Collapse Targets does not behave as expected?
Answer: Check the Bootstrap classes, breakpoint, DOM structure, loaded CSS version, and any JavaScript data attributes involved in Multiple Collapse Targets. Then inspect computed styles to see which declaration wins.
10. How should Multiple Collapse Targets be tested before publishing?
Answer: Test Multiple Collapse Targets on narrow and wide screens, with long translated text, in Persian and Arabic RTL mode, at increased zoom, and with keyboard navigation where the component is interactive.