Accordeon
Een accordeon biedt een verticale keuzelijst die je per onderdeel kunt openklappen om meer informatie te tonen.
Benodigde stappen:
- Voeg de benodigde bestanden toe aan het project.
- Voor een overzicht van de benodigde en optionele bestanden zie: Bijbehorende bestanden.
- Voeg het bijbehorende Javascript-bestand toe aan het project. Voor meer informatie zie: JavaScript toevoegen.
- Plaats een korte zichtbare tekst binnen een
<button>
. Bijvoorbeeld een omschrijvende titel of een vraag. Deze tekst is zichtbaar als de accordeon gesloten is. Zorg ervoor dat de gebruiker op basis van deze tekst kan bepalen of de onderliggende informatie waardevol is. - Geef de
<button>
een uniekeid
en verwijs vanaf de<div>
via eenaria-labelledby
naar deid
van de<button>
ten behoeve van toegankelijkheid. - Groepeer de verborgen content binnen een
<div>
.
Aandachtspunten:
- Standaard is het eerste onderdeel opengeklapt. Dit kan aangepast worden middels het
aria-expanded
-attribuut van de<button>
.- Voeg
aria-expanded="false"
toe aan de<button>
van het eerste onderdeel om te voorkomen dat het standaard opengeklapt is. - Voeg
aria-expanded="true"
toe aan de<button>
van een ander onderdeel om te zorgen dat dat onderdeel standaard opengeklapt is. Let op: dit zorgt ervoor dat het eerste onderdeel niet meer standaard opengeklapt is. Om te zorgen dat het eerste onderdeel óók standaard opengeklapt is, kan je ook daararia-expanded="true"
toevoegen.
- Voeg
Voorbeelden
ul
Visueel voorbeeld:
-
Titel van de content binnen het accordeon-element
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum suscipit egestas leo, eu semper erat congue at. Nulla pellentesque nunc nisl, at elementum ex aliquam ac. Fusce sed justo ullamcorper, eleifend nibh a, fringilla lorem. Aliquam erat volutpat. Aenean risus sem, tempor at rhoncus in, suscipit hendrerit arcu. Suspendisse ultricies semper sapien eget lobortis. Phasellus ut sodales sem. Aenean quis libero gravida, fringilla odio venenatis, condimentum lorem.
- Lorem ipsum
- Dolor sit amet
- Consectetur adepiscing elit.
-
Titel van de content binnen het accordeon-element
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum suscipit egestas leo, eu semper erat congue at. Nulla pellentesque nunc nisl, at elementum ex aliquam ac. Fusce sed justo ullamcorper, eleifend nibh a, fringilla lorem. Aliquam erat volutpat. Aenean risus sem, tempor at rhoncus in, suscipit hendrerit arcu. Suspendisse ultricies semper sapien eget lobortis. Phasellus ut sodales sem. Aenean quis libero gravida, fringilla odio venenatis, condimentum lorem.
- Lorem ipsum
- Dolor sit amet
- Consectetur adepiscing elit.
HTML-voorbeeld:
<ul class="accordion">
<li>
<button id="example-1-accordion-item-1">Voorbeeld-onderwerp 1</button>
<div aria-labelledby="example-1-accordion-item-1">
<h1>Titel van de content binnen het accordeon-element</h1>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum suscipit egestas
leo, eu semper erat congue at. Nulla pellentesque nunc nisl, at elementum ex aliquam
ac. Fusce sed justo ullamcorper, eleifend nibh a, fringilla lorem. Aliquam erat
volutpat. Aenean risus sem, tempor at rhoncus in, suscipit hendrerit arcu.
Suspendisse ultricies semper sapien eget lobortis. Phasellus ut sodales sem. Aenean
quis libero gravida, fringilla odio venenatis, condimentum lorem.
</p>
<ul>
<li>Lorem ipsum</li>
<li>Dolor sit amet</li>
<li>Consectetur adepiscing elit.</li>
</ul>
</div>
</li>
<li>
<button id="example-1-accordion-item-2">Voorbeeld-onderwerp 2</button>
<div aria-labelledby="example-1-accordion-item-2">
<h1>Titel van de content binnen het accordeon-element</h1>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum suscipit egestas
leo, eu semper erat congue at. Nulla pellentesque nunc nisl, at elementum ex aliquam
ac. Fusce sed justo ullamcorper, eleifend nibh a, fringilla lorem. Aliquam erat
volutpat. Aenean risus sem, tempor at rhoncus in, suscipit hendrerit arcu.
Suspendisse ultricies semper sapien eget lobortis. Phasellus ut sodales sem. Aenean
quis libero gravida, fringilla odio venenatis, condimentum lorem.
</p>
<ul>
<li>Lorem ipsum</li>
<li>Dolor sit amet</li>
<li>Consectetur adepiscing elit.</li>
</ul>
</div>
</li>
</ul>
div
Visueel voorbeeld:
Titel van de content binnen het accordeon-element
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum suscipit egestas leo, eu semper erat congue at. Nulla pellentesque nunc nisl, at elementum ex aliquam ac. Fusce sed justo ullamcorper, eleifend nibh a, fringilla lorem. Aliquam erat volutpat. Aenean risus sem, tempor at rhoncus in, suscipit hendrerit arcu. Suspendisse ultricies semper sapien eget lobortis. Phasellus ut sodales sem. Aenean quis libero gravida, fringilla odio venenatis, condimentum lorem.
- Lorem ipsum
- Dolor sit amet
- Consectetur adepiscing elit.
Titel van de content binnen het accordeon-element
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum suscipit egestas leo, eu semper erat congue at. Nulla pellentesque nunc nisl, at elementum ex aliquam ac. Fusce sed justo ullamcorper, eleifend nibh a, fringilla lorem. Aliquam erat volutpat. Aenean risus sem, tempor at rhoncus in, suscipit hendrerit arcu. Suspendisse ultricies semper sapien eget lobortis. Phasellus ut sodales sem. Aenean quis libero gravida, fringilla odio venenatis, condimentum lorem.
- Lorem ipsum
- Dolor sit amet
- Consectetur adepiscing elit.
HTML-voorbeeld:
<div class="accordion">
<div>
<button id="example-2-accordion-item-1">Voorbeeld-onderwerp 1</button>
<div aria-labelledby="example-2-accordion-item-1">
<h1>Titel van de content binnen het accordeon-element</h1>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum suscipit egestas
leo, eu semper erat congue at. Nulla pellentesque nunc nisl, at elementum ex aliquam
ac. Fusce sed justo ullamcorper, eleifend nibh a, fringilla lorem. Aliquam erat
volutpat. Aenean risus sem, tempor at rhoncus in, suscipit hendrerit arcu.
Suspendisse ultricies semper sapien eget lobortis. Phasellus ut sodales sem. Aenean
quis libero gravida, fringilla odio venenatis, condimentum lorem.
</p>
<ul>
<li>Lorem ipsum</li>
<li>Dolor sit amet</li>
<li>Consectetur adepiscing elit.</li>
</ul>
</div>
</div>
<div>
<button id="example-2-accordion-item-2">Voorbeeld-onderwerp 2</button>
<div aria-labelledby="example-2-accordion-item-2">
<h1>Titel van de content binnen het accordeon-element</h1>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum suscipit egestas
leo, eu semper erat congue at. Nulla pellentesque nunc nisl, at elementum ex aliquam
ac. Fusce sed justo ullamcorper, eleifend nibh a, fringilla lorem. Aliquam erat
volutpat. Aenean risus sem, tempor at rhoncus in, suscipit hendrerit arcu.
Suspendisse ultricies semper sapien eget lobortis. Phasellus ut sodales sem. Aenean
quis libero gravida, fringilla odio venenatis, condimentum lorem.
</p>
<ul>
<li>Lorem ipsum</li>
<li>Dolor sit amet</li>
<li>Consectetur adepiscing elit.</li>
</ul>
</div>
</div>
</div>
section
Visueel voorbeeld:
Titel van de content binnen het accordeon-element
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum suscipit egestas leo, eu semper erat congue at. Nulla pellentesque nunc nisl, at elementum ex aliquam ac. Fusce sed justo ullamcorper, eleifend nibh a, fringilla lorem. Aliquam erat volutpat. Aenean risus sem, tempor at rhoncus in, suscipit hendrerit arcu. Suspendisse ultricies semper sapien eget lobortis. Phasellus ut sodales sem. Aenean quis libero gravida, fringilla odio venenatis, condimentum lorem.
- Lorem ipsum
- Dolor sit amet
- Consectetur adepiscing elit.
Titel van de content binnen het accordeon-element
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum suscipit egestas leo, eu semper erat congue at. Nulla pellentesque nunc nisl, at elementum ex aliquam ac. Fusce sed justo ullamcorper, eleifend nibh a, fringilla lorem. Aliquam erat volutpat. Aenean risus sem, tempor at rhoncus in, suscipit hendrerit arcu. Suspendisse ultricies semper sapien eget lobortis. Phasellus ut sodales sem. Aenean quis libero gravida, fringilla odio venenatis, condimentum lorem.
- Lorem ipsum
- Dolor sit amet
- Consectetur adepiscing elit.
HTML-voorbeeld:
<section class="accordion">
<div>
<button id="example-3-accordion-item-1">Voorbeeld-onderwerp 1</button>
<div aria-labelledby="example-3-accordion-item-1">
<h1>Titel van de content binnen het accordeon-element</h1>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum suscipit egestas
leo, eu semper erat congue at. Nulla pellentesque nunc nisl, at elementum ex aliquam
ac. Fusce sed justo ullamcorper, eleifend nibh a, fringilla lorem. Aliquam erat
volutpat. Aenean risus sem, tempor at rhoncus in, suscipit hendrerit arcu.
Suspendisse ultricies semper sapien eget lobortis. Phasellus ut sodales sem. Aenean
quis libero gravida, fringilla odio venenatis, condimentum lorem.
</p>
<ul>
<li>Lorem ipsum</li>
<li>Dolor sit amet</li>
<li>Consectetur adepiscing elit.</li>
</ul>
</div>
</div>
<div>
<button id="example-3-accordion-item-2">Voorbeeld-onderwerp 2</button>
<div aria-labelledby="example-3-accordion-item-2">
<h1>Titel van de content binnen het accordeon-element</h1>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum suscipit egestas
leo, eu semper erat congue at. Nulla pellentesque nunc nisl, at elementum ex aliquam
ac. Fusce sed justo ullamcorper, eleifend nibh a, fringilla lorem. Aliquam erat
volutpat. Aenean risus sem, tempor at rhoncus in, suscipit hendrerit arcu.
Suspendisse ultricies semper sapien eget lobortis. Phasellus ut sodales sem. Aenean
quis libero gravida, fringilla odio venenatis, condimentum lorem.
</p>
<ul>
<li>Lorem ipsum</li>
<li>Dolor sit amet</li>
<li>Consectetur adepiscing elit.</li>
</ul>
</div>
</div>
</section>
Bijbehorende bestanden
Voor meer informatie over importeren en instellen van componenten. Zie: Componenten gebruiken en styling toevoegen
Importeer component via npm
CSS-voorbeeld:
@use "@minvws/manon/accordion";
Instelbare variabelen
- Accordeon list
button
- Open en sluit icoon. Keuze uit
::before
of::after
::before
::after
- Content