Was ist der richtige Weg, um Text kursiv zu machen? Ich habe die folgenden vier Ansätze gesehen:
<i>Italic Text</i>
<em>Italic Text</em>
<span class="italic">Italic Text</span>
<span class="footnote">Italic Text</span>
<i>
Dies ist der "alte Weg". <i>
hat keine semantische Bedeutung und vermittelt nur den Präsentationseffekt, den Text kursiv zu machen. Soweit ich sehen kann, ist dies eindeutig falsch, da dies nicht semantisch ist.
<em>
Dies verwendet semantisches Markup für rein präsentative Zwecke. Es kommt nur vor, dass <em>
Text standardmäßig kursiv dargestellt wird und daher häufig von Personen verwendet wird, die wissen, dass <i>
dies vermieden werden sollte, sich aber seiner semantischen Bedeutung nicht bewusst sind. Nicht jeder kursive Text ist kursiv, weil er hervorgehoben wird. Manchmal kann es genau das Gegenteil sein, wie eine Randnotiz oder ein Flüstern.
<span class="italic">
Dies verwendet eine CSS-Klasse, um eine Präsentation zu platzieren. Dies wird oft als der richtige Weg angepriesen, aber auch dies scheint mir falsch zu sein. Dies scheint keine semantische Bedeutung mehr zu vermitteln <i>
. Aber, seine Befürworter weinen, es ist viel einfacher, Ihren gesamten kursiven Text später zu ändern, wenn Sie ihn beispielsweise fett haben wollten. Dies ist jedoch nicht der Fall, da mir dann eine Klasse namens "kursiv" übrig bleibt, die den Text fett macht. Darüber hinaus ist nicht klar, warum ich jemals den gesamten kursiven Text auf meiner Website ändern möchte, oder wir können uns zumindest Fälle vorstellen, in denen dies nicht wünschenswert oder notwendig wäre.
<span class="footnote">
Dies verwendet eine CSS-Klasse für die Semantik. Bisher scheint dies der beste Weg zu sein, aber es gibt tatsächlich zwei Probleme.
Nicht jeder Text hat eine ausreichende Bedeutung, um ein semantisches Markup zu rechtfertigen. Ist beispielsweise kursiver Text am Ende der Seite wirklich eine Fußnote? Oder ist es eine Seite? Oder etwas ganz anderes. Vielleicht hat es keine besondere Bedeutung und muss nur kursiv dargestellt werden, um es präsentativ vom vorhergehenden Text zu trennen.
Die semantische Bedeutung kann sich ändern, wenn sie nicht in ausreichender Stärke vorhanden ist. Nehmen wir an, ich habe "Fußnote" mitgemacht, basierend auf nichts anderem als dem Text am Ende der Seite. Was passiert, wenn ich einige Monate später unten mehr Text hinzufügen möchte? Es ist keine Fußnote mehr. Wie können wir eine semantische Klasse wählen, die weniger allgemein ist als
<em>
diese Probleme vermeidet?
Zusammenfassung
Es scheint, dass das Erfordernis der Semantik in vielen Fällen übermäßig belastend zu sein scheint, in denen der Wunsch, etwas kursiv zu machen, keine semantische Bedeutung haben soll.
Darüber hinaus hat der Wunsch, Stil von Struktur zu trennen, dazu geführt, dass CSS als Ersatz für Fälle angepriesen wird, <i>
in denen dies tatsächlich weniger nützlich wäre. Das lässt mich mit dem bescheidenen <i>
Tag zurück und frage mich, ob dieser Gedankengang der Grund ist, warum er in der HTML5-Spezifikation verbleibt?
Gibt es auch gute Blog-Beiträge oder Artikel zu diesem Thema? Vielleicht von denjenigen, die an der Entscheidung beteiligt sind, das <i>
Tag beizubehalten / zu erstellen ?