@@Google weiß alles
Ich wollte ein Beispiel für Elemente, die keine Buttons sind aber so aussehen und so reagieren.
Die Elemente sehen so aus wie Buttons, aber sie reagieren eben nicht so wie Buttons. Nicht bei Tastatursteuerung.
Warum es meiner Ansicht nach nicht falsch ist aus anderen Elementen mit CSS und Js Buttons zu bauen: …
Warum deine Ansicht falsch ist: Es ist mit CSS und JS-Eventhandler allein nicht getan; es bedarf dazu noch einer ganzen Menge ARIA. Léonie Watson zeigt in „ARIA, accessibility APIs & coding like you give a damn!“ (Video, Folien), wie aufwändig es ist, aus einem beliebigen Element ein UI-Element zu machen, das nicht nur mit der Maus, sondern auch per Tastatursteuerung bedienbar ist, und assistive Technologie (wie Screenreader) dem Nutzer auch mitgeteilt, dass es sich dabei um ein UI-Element mit einer bestimmten Funktion handelt.
Und natürlich sollten man diesen Aufwand nicht betreiben, sondern die einfache Lösung nehmen: das native HTML-Element, dass all diese Funktion schon bereitstellt: button
(bzw. input type="button"
, aber lassen wir das).
“First rule of ARIA use: If you can use a native HTML element or attribute with the semantics and behaviour you require already built in, instead of re-purposing an element and adding an ARIA role, state or property to make it accessible, then do so.”
LLAP 🖖
“There’s no such thing as an ‘average’ user, but there is such a thing as an average developer.” —Vitaly Friedman in Accessibility Matters: Meet Our New Book, “Inclusive Design Patterns”
Selfcode:
sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|