untief.org

Hochstellung/Tiefstellung: HTML oder Unicode?

veröffentlicht
2012-08-27
verschlagwortet
HTML
Unicode

Sollte man ein hoch- bzw. tiefgestelltes Zeichen (falls es in Unicode enthalten ist) direkt eingeben oder auf das sup- bzw. sub-Element zurückgreifen?

Beispiele

mathematisch/physikalisch (Einheitenzeichen für Quadratmeter)
m<sup>2</sup>
chemisch (Summenformel von Wasser)
H₂O
H<sub>2</sub>O
phonetisch (IPA-Lautschrift von „Glück“)
gʷlʷʏkʰ
g<sup>w</sup>l<sup>w</sup>ʏk<sup>h</sup>

Empfehlungen vom W3C und Unicode-Konsortium

Das W3C und das Unicode Consortium haben zusammen das Dokument Unicode in XML and other Markup Languages verfasst (als W3C Working Group Note bzw. als Unicode Technical Report veröffentlicht).

Dort heißt es im Abschnitt Superscripts and Subscripts:

Super and subscripted letters and digits are quite common in some forms of phonetic or phonemic transcriptions, where the use of styles is both awkward and prone to data integrity issues when exported to plain text. For super or subscripted letters in phonetic transcription in particular, a change from superscript of subscript to regular style would alter the meaning. Note that such use in transcription is not limited to letters: superscripted small digits are often used to indicate tone. When used for these purposes, these characters should be retained and markup should not be used.

A few super and subscript characters, primarily the digits, also occur in many legacy character sets, including Latin-1. Their use in pure plain text is common for databases, e.g. including metric units for part descriptions (viz. cm2) or for (usually simplified) formulae as occur in titles of scientific publications.

When used in mathematical context (MathML) it is recommended to consistently use style markup for superscripts and subscripts. This is because mathematical layout allows not just individual symbols, but entire expressions to be superscripted or subscripted in a regular, nested manner.

Als Argument gegen Unicode wird angeführt, dass manche User-Agenten die Zeichen nicht darstellen können, falls entsprechende Schriftarten fehlen. Als Argument gegen HTML wird angeführt, dass die Hoch- bzw. Tiefstellung verloren gehen kann, wenn man den dargestellten Text kopiert und als Plaintext einfügt.

Es wird also empfohlen, auf die Unicode-Zeichen zurückzugreifen. Nur bei MathML sollte man die entsprechenden Elemente (msup und msub) verwenden und nicht die speziellen Unicode-Zeichen. Dies dürfte dann auch für das math-Element in HTML5 gelten.

Für Werte von HTML-Attributen (wie alt oder title) und für den Inhalt des title-Elements ist man sowieso auf die Verwendung von Unicode angewiesen, da dort kein Markup erlaubt ist.

Welche Variante man auch verwendet, die Bedeutung sollte äquivalent sein: Both representations (with or without style markup) should be equivalent for search purposes.

Andere Quelle, andere Empfehlung

Im informellen Dokument Characters or markup? (W3C) wird aber genau das Gegenteil empfohlen: use <sup> or <sub> markup für Superscripted and subscripted characters, heißt es da.