Hallo Gunnar,
ich akzeptiere deine gute Absicht, aber deinen Ton weise ich zurück. Der verletzt. Sicherlich ist nicht mein ganzer Code rot zu machen, nur weil das alt-Attribut nicht gesetzt ist.
Ich spiegele dich mal: <ironie> Dein Beitrag ist kompletter Müll. Das Attribut aria-labeledby gibt es nicht. Es heißt aria-labelledby, auch wenn laut Google ca. 37.500 Fliegen auf diesem Misthaufen sitzen. </ironie>
Aber trotzdem danke für den Stupser. Ich habe das alt-Attribut natürlich komplett vergessen, weil ich nicht täglich Webseiten baue, und die nun folgende Recherche zur figcaption folgte auf Grund meines Ärgers über deine Art der Kritik.
Ich habe nochmal in der HTML 5.2 Spec nachgelesen, da ist eine Aufstellung von Fällen bezüglich der Inhalte von src und alt.
src ist gesetzt, alt ist Leerstring: Bild ist dekorativ oder eine (redundante) Ergänzung zu anderen Infos im Dokument
src ist gesetzt, alt ist nicht leer: Bild ist Inhalt, alt enthält ein Text-Äquivalent oder -Ersatz für das Bild
src ist gesetzt, alt aber nicht: In dem Fall wird recht ausführlich und verquast dem Browser angeraten, sich an der figcaption zu orientieren. Und in der MDN steht, dass eine figure implizit die Rolle aria-labelledby zur figcaption enthält.
Das manuelle Setzen von aria-labelledby sollte also unnötig sein, und da Anna nach vielen figures fragt, ist das auch gut so, denn dann würde man eine Menge IDs auseinander halten müssen.
Du schlägst ein leeres alt-Attribut vor. Laut Spec bezeichnet das eine reine Deko. Ich glaube, das ist hier nicht so. Hier kommt Fall 3 in Frage, mit dem die Spec ein fehlendes alt-Attribut in einer figure mit figcaption als valide vorsieht. Leider sagt die Spec für Fall 3 nicht, ob das Bild dann als Inhalt oder als Dekoration anzusehen ist.
Es gibt aber noch einen anderen Satz:
In the case where an img without an alt attribute is the child of a figure element with a non-empty figcaption element, the image’s presence should be minimally conveyed to a user by Assistive Technology, typically by identifying the image role.
D.h. man müsste dem Bild eine role geben. Aber welche? role=figure und role=img gibt es - aber die sollten ein figure- und ein img-Element doch by default mitbringen. Dazu hätte ich gerne deine Meinung gelesen.
Rolf
sumpsi - posui - obstruxi