2013-02-05 4 views
5

Stimmt es, dass es semantisch korrekte & falsche Möglichkeiten zur Anzeige von Bildern/Symbolen gibt?
Ich meine natürlich ist es nicht sehr freundlich, alle Bilder eines Zeitungsartikels als Hintergrundbilder zu enthalten, weil Screenreader so den alt Text nicht lesen können, aber was ist mit Icons oder Benutzeroberflächenelementen? Ist es aus semantischer Sicht vertretbar, diese als Hintergrundbilder einzubeziehen?HTML - Semantische Art der Anzeige von Bildern/Icons/Benutzeroberflächenelementen?

+0

Es gibt einen Trend, 'i' Elemente mit CSS-Klassen für Symbole zu verwenden. Wenn es ein guter Trend ist, weiß ich nicht. Im Allgemeinen sollte IMO alles, was mit der Benutzeroberfläche (einschließlich Icons) zu tun hat, in der CSS sein. –

+0

@FelixKling Ich würde behaupten, dass die große Mehrheit der Icons immer noch zufrieden sind. Sie haben eine Bedeutung und einen Mehrwert. Sie sind nicht nur eine Hintergrunddekoration, die entfernt werden kann, ohne den Inhalt zu beeinflussen. – tomasz86

Antwort

6

Es gibt einige semantisch korrekte und inkorrekte Möglichkeiten, unterschiedliche Arten von Bildern anzuzeigen.

  • Normale Bilder Es ist besser Standard <img>-Tags zu verwenden, da sie oft der Hauptinhalt einer Website. Diese sollten alt Tags haben, um Benutzer über wichtige Teile des Inhalts zu informieren.
  • Die Symbole sind eine Art Bild, das nicht der Hauptinhalt Ihrer Website ist, aber sie sollten auch unter Verwendung von Tags angezeigt werden, da es für die Benutzerfreundlichkeit wichtig ist zu zeigen, welche spezifischen Symbole dies tun, wenn es nicht korrekt angezeigt wird.
  • Nicht wichtige Bilder, die die Website schön machen und nicht Hauptinhalt der Website sollte als Hintergrund angezeigt werden, denn dann verwenden Sie keine unnötigen Knoten in Ihrem DOM.
+1

Bingo! Ich möchte auch hinzufügen, dass so genannte "nicht wichtige" Elemente oft von Seite zu Seite wiederholt werden und vielleicht sogar im Kontext der gleichen Seite. Wenn Sie also über CSS als Hintergrund laden, wird auch das Rendering ausgeglichen. – JakeGould

2

Ich glaube nicht, dass Sie Symbole als ein separates Element, das nur dieses Symbol darstellt; z.B. ein img oder i.

Stattdessen stellt jedes Symbol eine bestimmte Funktion dar - daher sollten Sie ein Element verwenden, das für diese Funktionalität verwendet werden könnte, z. ein Anker a oder ein button. Jedes dieser Elemente sollte einen nicht grafischen Inhalt haben, der von Bildschirmleseprogrammen und Webspidern analysiert werden könnte. Sie können diese Elemente dann verschönern, indem Sie Hintergrundbilder für ein grafisches Symbol verwenden.

Verwenden von separaten Markup für Symbole ist ein semantischer Fehler. Das Symbol selbst tut nichts. Es ist nur da, um sich die Funktion des zugrunde liegenden Elements zu merken. Tatsächlich sind diese Elemente jedoch immer noch vorhanden, wenn Sie das Symbol entfernen.

Also ja, ich würde immer Symbole als Hintergrundbilder zu einem Element direkt oder zu einem generierten Pseudoelement hinzufügen.