Link ohne Namen
WCAG 2.2 2.4.4 Linkzweck (im Kontext), Stufe A
25 Vorkommen, gefunden auf: Startseite, Kollektionsseite, Produktseite, Warenkorbseite
- Warum es für Kundinnen und Kunden zählt
- Ein Screenreader sagt nur „Link“, man erfährt nicht, wohin er führt.
- Wo es in einem Shopify-Theme meist steckt
- Icon-Links im Header (Konto, Warenkorb), Social-Media-Icons im Footer, Links nur aus einem Bild auf Produktkarten und Kollektionskacheln.
- Richtung für eine Korrektur
- Geben Sie Icon-Links einen visuell verborgenen Text oder ein aria-label, zum Beispiel „Warenkorb“ oder „Instagram“. Bei einem Bildlink bekommt das Bild einen Alt-Text.
- Beispiele aus dem Demo-Shop
aa.text-with-icons--block-link
Auswahlliste ohne Beschriftung
WCAG 2.2 1.3.1 Info und Beziehungen, Stufe A
3 Vorkommen, gefunden auf: Startseite
- Warum es für Kundinnen und Kunden zählt
- Wer die Seite nicht sieht, weiß nicht, ob die Liste Größe, Farbe, Sortierung oder Land auswählt.
- Wo es in einem Shopify-Theme meist steckt
- Variantenauswahl auf der Produktseite, Sortierung auf Kollektionsseiten, Länder- und Sprachauswahl.
- Richtung für eine Korrektur
- Benennen Sie jede Auswahlliste mit einem label-Element (for und id) oder einem aria-label wie „Größe“ oder „Sortieren nach“.
- Beispiele aus dem Demo-Shop
select.shop-our-range--hidden
Formularfeld ohne Beschriftung
WCAG 2.2 1.3.1 Info und Beziehungen, Stufe A
2 Vorkommen, gefunden auf: Kollektionsseite
- Warum es für Kundinnen und Kunden zählt
- Ohne Beschriftung sagt ein Screenreader nur „Eingabefeld“. Man erfährt nicht, ob E-Mail-Adresse, Menge oder Rabattcode gemeint ist.
- Wo es in einem Shopify-Theme meist steckt
- Newsletter-Anmeldung im Footer, Suchfeld im Header, Mengenfelder im Warenkorb, Preisfilter auf Kollektionsseiten.
- Richtung für eine Korrektur
- Verbinden Sie jedes Feld über for und id mit einem label-Element (es darf visuell verborgen sein) oder geben Sie ihm ein aria-label. Ein Platzhalter ersetzt keine Beschriftung.
- Beispiele aus dem Demo-Shop
input#Filter-Mobile-Price-GTE (type="text")input#Filter-Mobile-Price-LTE (type="text")
Schaltfläche ohne Namen
WCAG 2.2 4.1.2 Name, Rolle, Wert, Stufe A
2 Vorkommen, gefunden auf: Kollektionsseite
- Warum es für Kundinnen und Kunden zählt
- Man hört „Schaltfläche“, ohne zu erfahren, ob sie ein Menü schließt, etwas in den Warenkorb legt oder die Suche öffnet.
- Wo es in einem Shopify-Theme meist steckt
- Schaltflächen nur mit Icon: Schließen von Drawern, Pfeile von Slidern, Plus und Minus bei der Menge, Menü- und Suchschalter.
- Richtung für eine Korrektur
- Geben Sie der Schaltfläche ein aria-label oder einen visuell verborgenen Text und blenden Sie das Icon darin mit aria-hidden="true" aus.
- Beispiele aus dem Demo-Shop
button.facets--bar-view-as-button
Dieselbe id kommt mehrfach vor
WCAG 2.2 4.1.2 Name, Rolle, Wert, Stufe A
12 Vorkommen, gefunden auf: Startseite, Kollektionsseite, Produktseite
- Warum es für Kundinnen und Kunden zählt
- Beschriftungen, Fehlermeldungen und ARIA-Verweise können auf das falsche Element zeigen, sodass ein Feld oder Bedienelement seinen Namen verliert.
- Wo es in einem Shopify-Theme meist steckt
- Sektionen, die doppelt auf einer Seite stehen, etwa Desktop- und Mobil-Header, Warenkorb-Drawer und Warenkorbseite, oder Länder- und Sprachauswahl in Header und Footer.
- Richtung für eine Korrektur
- Machen Sie erzeugte ids eindeutig, zum Beispiel indem Sie die Sektions-id anhängen.
- Beispiele aus dem Demo-Shop
"template--17531124383975__collection_tabs_X4NQFk-1-0", 6×"template--17531124383975__collection_tabs_X4NQFk-1-1", 6×"template--17531124121831__product-grid-1-0", 11×
Überschriftenebenen überspringen eine Stufe
WCAG 2.2 1.3.1 Info und Beziehungen, Stufe A
4 Vorkommen, gefunden auf: Startseite, Kollektionsseite, Produktseite
- Warum es für Kundinnen und Kunden zählt
- Wer sich über Überschriften durch eine Seite bewegt, erwartet eine saubere Verschachtelung. Ein Sprung von h2 auf h4 wirkt, als fehle etwas.
- Wo es in einem Shopify-Theme meist steckt
- Sektionsüberschriften, Titel in Produktkarten und Spaltenüberschriften im Footer, deren Ebene nach Schriftgröße gewählt wurde.
- Richtung für eine Korrektur
- Wählen Sie die Ebene nach dem Aufbau der Seite und steuern Sie die Größe über eine CSS-Klasse.
- Beispiele aus dem Demo-Shop
aria-labelledby oder aria-describedby verweist auf ein fehlendes Element
WCAG 2.2 4.1.2 Name, Rolle, Wert, Stufe A
1 Vorkommen, gefunden auf: Kollektionsseite
- Warum es für Kundinnen und Kunden zählt
- Das Element sollte Namen oder Beschreibung von einem anderen Element übernehmen, das nicht auf der Seite ist. Der Screenreader hat nichts vorzulesen.
- Wo es in einem Shopify-Theme meist steckt
- Produktkarten, die auf Sale- oder Ausverkauft-Badges verweisen, die nur manchmal erscheinen, Fehlermeldungen in Formularen, Dialoge.
- Richtung für eine Korrektur
- Geben Sie den Verweis nur aus, wenn das Zielelement vorhanden ist, oder geben Sie das Zielelement immer aus.
- Beispiele aus dem Demo-Shop
aria-describedby → "a11y-refresh-page-message"
Leere Überschrift
WCAG 2.2 1.3.1 Info und Beziehungen, Stufe A
1 Vorkommen, gefunden auf: Produktseite
- Warum es für Kundinnen und Kunden zählt
- Ein Screenreader kündigt eine Überschrift an, in der nichts steht.
- Wo es in einem Shopify-Theme meist steckt
- Im Theme-Editor leer gelassene Überschriften-Blöcke oder Überschriften, die nur ein Icon enthalten.
- Richtung für eine Korrektur
- Geben Sie das Überschriften-Tag nicht aus, wenn die Einstellung leer ist.
- Beispiele aus dem Demo-Shop
Seite ohne h1-Überschrift
WCAG 2.2 1.3.1 Info und Beziehungen, Stufe A
1 Vorkommen, gefunden auf: Warenkorbseite
- Warum es für Kundinnen und Kunden zählt
- Wer einen Screenreader nutzt, springt oft zuerst zur Überschrift erster Ebene, um zu erfahren, worum es auf der Seite geht.
- Wo es in einem Shopify-Theme meist steckt
- Der Haupttitel einer Vorlage: Kollektionsbanner, Produkttitel in der Hauptproduktsektion, Warenkorbtitel. Manche Vorlagen gestalten den Titel wie eine Überschrift, ohne ein h1 zu verwenden.
- Richtung für eine Korrektur
- Geben Sie den Haupttitel jeder Vorlage als genau ein h1 aus.
Icon ohne Textalternative und ohne Kennzeichnung als Dekoration
WCAG 2.2 1.1.1 Nicht-Text-Inhalt, Stufe A
49 Vorkommen, gefunden auf: Startseite, Kollektionsseite, Produktseite, Warenkorbseite
- Warum es für Kundinnen und Kunden zählt
- Trägt das Icon eine Bedeutung, etwa eine Zahlungsart oder „kostenloser Versand“, fehlt sie im Screenreader. Ist es Dekoration, sollte es für Screenreader verborgen sein.
- Wo es in einem Shopify-Theme meist steckt
- Icon-Snippets, Zahlungs-Icons im Footer, Vertrauens- und Feature-Icons.
- Richtung für eine Korrektur
- Verbergen Sie dekorative Icons mit aria-hidden="true". Bedeutungstragende Icons bekommen role="img" und ein aria-label oder ein title-Element.
- Was der Test sehen kann
- Der Test kann dekorative und bedeutungstragende Icons nicht unterscheiden. Jeder dieser Befunde braucht einen kurzen Blick.
- Beispiele aus dem Demo-Shop