Schaltfläche ohne Namen
WCAG 2.2 4.1.2 Name, Rolle, Wert, Stufe A
27 Vorkommen, gefunden auf: Startseite, Kollektionsseite, Produktseite, Warenkorbseite
- 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.header__icons--hoverbutton.search__button--resetbutton.heading-group__navigation-button
Link ohne Namen
WCAG 2.2 2.4.4 Linkzweck (im Kontext), Stufe A
12 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
a.header__full-screen-menu__overlay--link
Klickbares Element, das weder Schaltfläche noch Link ist
WCAG 2.2 4.1.2 Name, Rolle, Wert, Stufe A
11 Vorkommen, gefunden auf: Startseite, Kollektionsseite, Produktseite, Warenkorbseite
- Warum es für Kundinnen und Kunden zählt
- Ein div oder span mit Klick-Handler ist mit der Tab-Taste nicht erreichbar und wird nicht als klickbar angesagt.
- Wo es in einem Shopify-Theme meist steckt
- Eigene Farbfelder, Akkordeons, Tabs und Schnellansicht-Auslöser aus div- oder span-Elementen.
- Richtung für eine Korrektur
- Verwenden Sie für Aktionen ein button-Element und für Navigation einen Link.
- Beispiele aus dem Demo-Shop
div.banner-grid__contentdiv.media-bannerdiv.button
Formularfeld 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
- 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#ContactForm-email (type="email")
aria-labelledby oder aria-describedby verweist auf ein fehlendes Element
WCAG 2.2 4.1.2 Name, Rolle, Wert, Stufe A
52 Vorkommen, gefunden auf: Startseite, Kollektionsseite, Produktseite, Warenkorbseite
- 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 → "title-template--29134024868183__popular-products-10641448894807"aria-labelledby → "title-template--29134024868183__popular-products-10640986308951"aria-labelledby → "title-template--29134024868183__popular-products-10641111384407"
Dieselbe id kommt mehrfach vor
WCAG 2.2 4.1.2 Name, Rolle, Wert, Stufe A
38 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
"HeaderLanguageForm", 3×"HeaderLanguageList", 3×"QuickAdd-10640986308951", 2×
Überschriftenebenen überspringen eine Stufe
WCAG 2.2 1.3.1 Info und Beziehungen, Stufe A
5 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
Positiver tabindex ändert die Tab-Reihenfolge
WCAG 2.2 2.4.3 Fokus-Reihenfolge, Stufe A
4 Vorkommen, gefunden auf: Startseite, Kollektionsseite, Produktseite, Warenkorbseite
- Warum es für Kundinnen und Kunden zählt
- Der Tastaturfokus springt zuerst zu diesen Elementen, abweichend von der Lesereihenfolge.
- Wo es in einem Shopify-Theme meist steckt
- Slider, Pop-ups, Newsletter-Dialoge und eigene Widgets.
- Richtung für eine Korrektur
- Entfernen Sie positive tabindex-Werte. Nutzen Sie bei Bedarf tabindex="0" und ordnen Sie die Elemente im Markup.
- Beispiele aus dem Demo-Shop
Seite ohne h1-Überschrift
WCAG 2.2 1.3.1 Info und Beziehungen, Stufe A
2 Vorkommen, gefunden auf: Produktseite, 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
107 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
Fokus springt beim Laden der Seite
WCAG 2.2 3.2.1 Bei Fokus, Stufe A
1 Vorkommen, gefunden auf: Produktseite
- Warum es für Kundinnen und Kunden zählt
- Wer einen Screenreader nutzt, beginnt an unerwarteter Stelle und verpasst den Anfang der Seite.
- Wo es in einem Shopify-Theme meist steckt
- Suchfelder und Pop-ups mit dem Attribut autofocus.
- Richtung für eine Korrektur
- Entfernen Sie autofocus und setzen Sie den Fokus erst, wenn etwas geöffnet wurde.
- Beispiele aus dem Demo-Shop
div.product-popup-modal__form-message