So schließt du die Hintertüren in deiner barrierefreien Website

📊 Projektleitung | 👔 Geschäftsführung | 🖥️ IT | 🧑‍⚖️ Recht

Überblick zu SOP 36

🕓 Wann musst du das machen?

  • Immer, wenn du Inhalte von einem anderen Dienst auf deiner Seite einbettest.
  • Konkret bei: YouTube-/Vimeo-Videos, Google-Maps-Karten, Social-Media-Feeds (Twitter, Instagram etc.), Buchungs-Widgets von Drittanbietern und allen anderen Inhalten, die per
  • Gutes Beispiel: <iframe src=“…“ title=“YouTube-Videoplayer: Unsere Produktvorstellung“>
  • Schlechte Beispiel:

✅ Ergebnis

Am Ende dieser SOP hast du: 

  • Sichergestellt, dass eingebettete Inhalte deine Barrierefreiheit nicht untergraben.
  • Nutzer:innen transparent darüber informiert, was sie in einem iframe erwartet.
  • Verhindert, dass Tastatur-Nutzer:innen auf deiner Seite gefangen werden.
  • Einen Notfallplan für unzugängliche, aber notwendige Widgets von Drittanbietern.
  • Deine Website-Performance durch den Einsatz von Lazy Loading verbessert. Um die in dieser SOP festgelegten Anforderungen an Fokus-Management, Tastaturfalle, Schließ-Mechanismen und ARIA-Attribute für modale Dialoge und Overlays sofort und zuverlässig umzusetzen, ist es sinnvoll ein bereits erprobten Muster zu nutzen.

Das folgende Beispiel eines „Accessible Modal Dialog“ des W3C (World Wide Web Consortium) ist ein Industriestandard und erfüllt alle relevanten Kriterien der WCAG und des BFSG. Es dient als Direktive für die technische Implementierung . Betreff: Checkliste für das Einbetten externer Inhalte (YouTube, Karten etc.) Hallo Team,

bevor ihr einen externen Inhalt per iframe auf der Website einbettet, prüft bitte diese drei Punkte:

  • Titel vergeben? Der iframe-Code muss ein aussagekräftiges title-Attribut enthalten (z. B. title=“Anfahrtskarte zu unserem Büro“).
  • Tastatur-Test bestanden? Man muss mit der Tab-Taste in den iframe hinein- und vor allem auch wieder hinausnavigieren können.
  • Alternative vorhanden? Wenn der Inhalt selbst nicht gut bedienbar ist (z. B. eine komplexe Anwendung), muss direkt daneben eine textliche Alternative angeboten werden (z. B. Adresse und Telefonnummer).

Nur wenn alle drei Punkte erfüllt sind, darf der Inhalt online gehen.

Danke!

Viele Grüße [Dein Name] Fragen und Antworten (FAQ ) zu dieser SOP

💬 Copy-Paste-Baustein

Fragen und Antworten (FAQ) zu dieser SOP

Ich habe ein CMS, das viele </p> <div>s generiert und mir wenig Kontrolle über die HTML-Struktur gibt. Wie kann ich hier am besten vorgehen, um die SOP einzuhalten?

Das ist ein häufiges Problem, du. In solchen Fällen ist es entscheidend, die Grenzen deines CMS zu verstehen und clevere Workarounds zu finden:

• Nutze Themes/Plugins, die semantisches HTML verwenden: Prüfe, ob es Themes oder Plugins gibt, die von Haus aus HTML5-Elemente korrekt einsetzen.

• Greife mit JavaScript ein (als letzte Instanz): Wenn das CMS nur

s ausspuckt, kannst du nach dem Laden der Seite mit JavaScript diese
s erkennen und ihnen die entsprechenden role -Attribute hinzufügen. Dies ist allerdings ein Notnagel und sollte nur eingesetzt werden, wenn du die HTML-Ausgabe des CMS absolut nicht direkt beeinflussen kannst, da es eine clientseitige Abhängigkeit schafft.

• Nutze das CMS bewusst: Auch wenn das Grundgerüst aus

s besteht, kannst du oft innerhalb von Inhaltsbereichen (
,
) die Struktur mit HTML5-Elementen verbessern.

• Spreche mit dem Anbieter: Leite die Anforderungen an deinen CMS-Anbieter weiter und fordere Verbesserungen bei der semantischen Ausgabe.

Meine Seite hat ein Suchfeld im Header und ein weiteres, detaillierteres Suchformular auf einer separaten Suchseite. Wie benenne ich diese role=%22search%22-Elemente korrekt, wenn ich zwei habe?

Ähnlich wie bei multiplen