Alte Hasen aus Zeiten von HTML 3.2 oder 4.01 werden sich erinnern, dass man fetten Text mit <b>
auszeichnete, kursiven Text mit <i>
. Unter XHTML kamen dann <strong>
und <em>
dazu. <b>
hatte ein rein typografische Bedeutung, es sollte also Text visuell durch eine Fettung der Schrift hervorgehoben werden. <strong>
hingegen sollte eingesetzt werden, wenn eine Textpassage inhaltlich stark hervorgehoben werden sollte, was in gesprochener Sprache einer starken Betonung entspricht. In fast allen Browsern wurde beides genau gleich dargestellt.
Mit <i>
und <em>
verhielt es sich ähnlich: visuelle Schrägstellung der Buchstaben einerseits, Betonung andererseits. Nur dass hier eine eher schwache oder normale Betonung symbolisiert werden solle, im ersten Fall eine starke Betonung. <strong>
war also eine Steigerung von <em>
.
Leider wurde das von Amateur-Webdesignern oft nicht verstanden, und so hieß es oft, <b>
solle oder dürfe ja nicht mehr verwendet werden, und man zeichnete alles, was irgendwie fett aussehen oder bedeutungsschwanger sein sollte, kurzerhand mit <strong>
aus. Dazu kamen dann noch die Verfechter der unsinnigen These, dass alle diese Text formatierenden HTML-Elemente eh nichts mehr im Quelltext zu suchen hätten. Und so wurde dann <span style="bold">
als reine CSS-Lösung verwendet. Dumm nur, dass man nicht berücksichtigte, dass dann auch die Screenreader, die ja CSS ignorieren und sich nach der rein semantischen HTML-Auszeichnung richten, den sehbehinderten Benutzern die hervorgehobenen Passagen nicht betont vorlasen.
Mit HTML5 wird alles noch schwieriger – vermeintlich. Ich hingegen bin der Ansicht, dass es einfacher, weil eindeutiger geworden ist. <b>
und <i>
dienen nach wie vor der rein typografisch-visuellen Hervorhebung. Mit <strong>
zeichnet man eine besonders wichtige Textpassage aus, mit <em>
dagegen eine sprachlich besonders betonte. <strong>
ist also keine Steigerung von <em>
mehr, sondern beide haben eine unterschiedliche Bedeutung bekommen.
Dies finde ich absolut verständlich und plausibel. Und die Darstellung, die man mit CSS festlegt, ist eine ganz andere Sache. Sie hat mit Design zu tun, nicht mit Semantik.