Für Screenreader verborgen, aber per Tab erreichbar
WCAG 2.2 4.1.2 Name, Rolle, Wert, Stufe A
62 Vorkommen, gefunden auf: Kollektionsseite
- Warum es für Kundinnen und Kunden zählt
- Wer die Tastatur nutzt, landet auf einem Element, das der Screenreader nicht ansagt.
- Wo es in einem Shopify-Theme meist steckt
- Geklonte Karussell-Slides, per aria-hidden verborgene Drawer und Mobilmenüs, Schnellkauf-Schaltflächen in verborgenen Slides.
- Richtung für eine Korrektur
- Wenn ein Bereich mit aria-hidden verborgen wird, nehmen Sie seine Bedienelemente mit tabindex="-1" oder dem Attribut inert auch aus der Tab-Reihenfolge.
- Beispiele aus dem Demo-Shop
span.facet-checkbox__text
Bild ohne alt-Attribut
WCAG 2.2 1.1.1 Nicht-Text-Inhalt, Stufe A
6 Vorkommen, gefunden auf: Startseite, Kollektionsseite, Produktseite, Warenkorbseite
- Warum es für Kundinnen und Kunden zählt
- Ein Screenreader überspringt das Bild oder liest den Dateinamen vor. Blinde Kundinnen und Kunden erfahren nicht, was das Produktfoto zeigt.
- Wo es in einem Shopify-Theme meist steckt
- Snippets für Produktkarten und Produktmedien, Bildbanner, Slideshow-Sektionen und Bild-mit-Text-Sektionen, manchmal auch das Logo im Header.
- Richtung für eine Korrektur
- Geben Sie den beim Bild gespeicherten Alt-Text aus, mit dem Produkt- oder Sektionstitel als Ersatz, und versehen Sie rein dekorative Bilder mit einem leeren alt="".
- Beispiele aus dem Demo-Shop
Formularfeld ohne Beschriftung
WCAG 2.2 1.3.1 Info und Beziehungen, Stufe A
4 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
Auswahlliste 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
- 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
Textbereich ohne Beschriftung
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
- Wer einen Screenreader nutzt, weiß nicht, was in das Feld gehört.
- Wo es in einem Shopify-Theme meist steckt
- Bestellnotiz im Warenkorb und Nachrichtenfeld im Kontaktformular.
- Richtung für eine Korrektur
- Geben Sie dem Textbereich ein über for und id verbundenes label-Element oder ein aria-label.
- 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
94 Vorkommen, gefunden auf: Startseite, Kollektionsseite, Produktseite
- 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-labelledby → "CardLink-sections--24010166075720__cart-drawer-9329300308296"aria-labelledby → "Badge-sections--24010166075720__cart-drawer-9329300308296"aria-labelledby → "title-sections--24010166075720__cart-drawer-9329300308296"
Dieselbe id kommt mehrfach vor
WCAG 2.2 4.1.2 Name, Rolle, Wert, Stufe A
54 Vorkommen, gefunden auf: Startseite, Kollektionsseite, Produktseite, Warenkorbseite
- 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
"HeaderDrawer-bath-rugs-minimalist", 2×"HeaderDrawer-bath-rugs-twisted", 2×"HeaderDrawer-bath-rugs-reversible", 2×
Ü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
Icon ohne Textalternative und ohne Kennzeichnung als Dekoration
WCAG 2.2 1.1.1 Nicht-Text-Inhalt, Stufe A
24 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