Barrierefreiheit (BFSG/WCAG 2.1 AA): Skip-Link, aria-live, Labels, Fokus-Sichtbarkeit, Überschriften-Hierarchie
Technisches Accessibility-Audit ergab sechs behebbare Punkte, alle jetzt gefixt: - Skip-to-Content-Link ganz oben auf jeder Seite (WCAG 2.4.1) - Fehler-/Statusmeldungen (Checkout, Login, Rezension, Gate-/Verwaltungs-Code) jetzt mit role="alert"/aria-live, damit Screenreader sie automatisch ansagen (WCAG 4.1.3) - Warenkorb-Icon hatte fälschlich das "Konto"-Label geerbt, sagt jetzt korrekt "Warenkorb" (WCAG 4.1.2/2.4.4), dafür t.nav.cart in allen 4 Sprachen neu ergänzt - Sichtbarer Fokus-Ring beim Mengenfeld auf der Produktseite wiederhergestellt (WCAG 2.4.7) - Placeholder-only Formularfelder (Gate-Zugangscode, Verwaltungs-Suche/Filter/Tracking) haben jetzt echte Labels (sichtbar per sr-only-Klasse oder aria-label) statt nur Platzhaltertext (WCAG 1.3.1/3.3.2) - Übersprungene Überschriften-Ebenen (h1→h3 ohne h2) in Checkout, Warenkorb, Kontakt, Konto korrigiert (WCAG 1.3.1) Reine Accessibility-Nachrüstung, keine funktionale Änderung. Kleinstunternehmer-Ausnahme (§3 Abs.3 BFSG) greift hier vermutlich, aber vorsorglich sauber umgesetzt. Co-Authored-By: Claude Sonnet 5 <[email protected]>
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
b70bad3e41
commit
b944bcf724
+21
-1
@@ -42,6 +42,20 @@
|
||||
* { box-sizing: border-box; }
|
||||
html { scroll-behavior: smooth; }
|
||||
|
||||
/* Für Screenreader vorhanden, visuell aber unsichtbar — für Formularfelder, die aus Platz-/
|
||||
Layoutgründen keinen sichtbaren <label>-Text bekommen (z.B. Icon-/Placeholder-only Suchfelder
|
||||
in der Verwaltung), damit sie trotzdem einen echten zugänglichen Namen haben (WCAG 1.3.1/3.3.2)
|
||||
statt sich allein auf den (beim Tippen verschwindenden) Placeholder zu verlassen. */
|
||||
.sr-only {
|
||||
position: absolute;
|
||||
width: 1px; height: 1px;
|
||||
padding: 0; margin: -1px;
|
||||
overflow: hidden;
|
||||
clip: rect(0, 0, 0, 0);
|
||||
white-space: nowrap;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
background: var(--c-black);
|
||||
@@ -2043,7 +2057,13 @@ a:focus-visible, button:focus-visible {
|
||||
}
|
||||
.qty-stepper input::-webkit-outer-spin-button,
|
||||
.qty-stepper input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
|
||||
.qty-stepper input:focus { outline: none; }
|
||||
/* Kein echtes outline (würde durch das runde .qty-stepper-Gehäuse eckig herausragen), aber
|
||||
deswegen NICHT ersatzlos entfernt (WCAG 2.4.7 "Focus Visible") — stattdessen ein innen
|
||||
liegender Ring per box-shadow, der sich sauber an die abgerundete Form anschmiegt. */
|
||||
.qty-stepper input:focus {
|
||||
outline: none;
|
||||
box-shadow: inset 0 0 0 2px var(--c-accent);
|
||||
}
|
||||
.specs { margin-top: 1.5rem; }
|
||||
.specs th { width: 40%; color: var(--c-text-muted); font-weight: 500; font-family: var(--font-body); }
|
||||
|
||||
|
||||
Reference in New Issue
Block a user