Wcag uitgelegd

Cookiebanner die pas na 30 tabs bereikbaar is

Cookiebanner die pas na 30 tabs bereikbaar is — WCAG 2.4.3 Focusvolgorde (post 5/11)

Een cookiebanner onderaan het scherm. “Wij gebruiken cookies.” Twee knoppen: Accepteren en Weigeren.

Je drukt op Tab. De focus gaat naar het logo. Tab. Naar het menu. Tab. Tab. Tab. Door alle menulinks. Tab. Door de content. Tab. Door de sidebar. Tab. Door de footer.

En dan — eindelijk — bij de cookiebanner.

Ondertussen bedekt de banner de content die je net probeerde te lezen.

Het probleem: de cookiebanner staat onderaan de HTML. De focus volgt de HTML-volgorde. Dus eerst de hele pagina, dan de banner.

Twee oplossingen:

  1. Zet de banner bovenaan in de HTML:
<div class="cookiebanner" role="dialog" aria-label="Cookiemelding">
  <p>Wij gebruiken cookies.</p>
  <button autofocus>Accepteren</button>
  <button>Weigeren</button>
</div>
<header>...</header>
<main>...</main>
  1. Verplaats de focus met JavaScript:
window.addEventListener("load", () => {
  const banner = document.querySelector(".cookiebanner");
  if (banner) banner.querySelector("button")?.focus();
});

Waarom is dit zo belangrijk?

Omdat de cookiebanner de eerste interactie is die je van je bezoeker vraagt. Als die interactie pas na 30 tabs bereikbaar is, begin je de ervaring met frustratie.

Related Posts

overflow: hidden knipt de focusindicator af

overflow: hidden knipt de focusindicator af

Een mooie kaartcomponent. Afgeronde hoeken. overflow: hidden om te voorkomen dat content buiten de hoeken valt.

Focusindicator die opgaat in de achtergrond

Focusindicator die opgaat in de achtergrond

Er is een focusindicator. Technisch gezien. Een lichtgrijze outline (#E0E0E0) op een witte achtergrond. 1 pixel dik.

Focusindicator die opgaat in de achtergrond

Focusindicator die opgaat in de achtergrond

Er is een focusindicator. Technisch gezien. Een lichtgrijze outline (#E0E0E0) op een witte achtergrond. 1 pixel dik.