Wie soll ich Maßeinheiten in HTML5 markieren? (Zentimeter, Gramm usw.)

8

Ich markiere eine Tabelle, die Werte mit Maßeinheiten enthält. Ich habe darüber nachgedacht, wie ich das Dokument für die beste Zugänglichkeit markieren kann. Ist es wichtig, Variablenwerte und konstante Namen für Werte zu berücksichtigen?

Ich habe kein <value> , <unit> -Element oder ein entsprechendes Attribut für diesen Fall gefunden.

Meine drei Markup-Ansätze

%Vor%

------------ o r ------------

%Vor%

------------ o r ------------

%Vor%     
Tomkay 22.03.2013, 09:18
quelle

4 Antworten

2

Es gibt kein Markup für Maßeinheiten in HTML oder für Zahlen. Wenn Sie also ein Markup für sie benötigen (z. B. um sie einheitlich zu formatieren oder mit einem clientseitigen Skript zu verarbeiten), verwenden Sie span element mit einem class Attribut für Zahlen oder Einheiten oder beides, zB

%Vor%

(Beachten Sie, dass nach internationalen Standards die Zahl und die Einheit durch ein Leerzeichen getrennt sein müssen, das ein Leerzeichen enthalten kann, &nbsp; , falls erforderlich).

Normalerweise wird kein Markup für Einheiten benötigt. Oder es gibt kein Markup, das wir für einen nützlichen Zweck verwenden könnten, und das Schreiben von span markup nur zum Spaß macht den HTML-Code weniger lesbar.

In einigen Interpretationen sind die Einheitensymbole jedoch Abkürzungen, daher könnte abbr markup verwendet werden. Beachten Sie, dass dies in den meisten Browsern standardmäßig eine gepunktete Linie unter (unterer Rand) verursacht. Um es zu entfernen, setze abbr { border: none } in CSS. Im Wesentlichen sind die Einheitensymbole eher konventionelle Bezeichnungen als Abkürzungen.

Wenn Sie ein title -Attribut, ein span , ein abbr oder ein anderes Element verwenden, zeigt eine assistive Software den Attributwert an, wenn der Benutzer dies anfordert. Es neigt auch dazu, es in einem Tooltip in gängigen Browsern angezeigt zu bekommen. Es ist fraglich, ob solche "Hinweise" nützlich sind und nicht nur allgemein bekannte Symbole stören.

Die Verwendung von em würde eine grundsätzliche Betonung bedeuten, die kaum genutzt wird und kursiv in der Praxis verwendet werden würde. Im internationalen Maßstab dürfen die Einheitensymbole niemals kursiv gedruckt werden. Obwohl Sie CSS verwenden können, um kursiv zu entfernen, wäre es seltsam, Markup zu verwenden, das dazu neigt, es zu verursachen.

    
Jukka K. Korpela 22.03.2013 10:52
quelle
2

Ich mag Ihren dritten Ansatz, ein abbr -Tag zum Hinzufügen von Kontextinformationen und zum Verbessern der Barrierefreiheit zu verwenden. Es ist eine großartige Idee.

Allerdings entspricht keines Ihrer Markups den Regeln des Internationalen Einheitensystems. Siehe Ссылка

Sie müssen den Wert und die Einheit durch ein Leerzeichen trennen.

%Vor%     
PA. 22.03.2013 10:55
quelle
1

Die Verwendung von em für die Einheit / den Wert wäre falsch (normalerweise; natürlich gibt es einige Fälle, in denen es angebracht sein könnte, aber nicht allgemein). Das em Element "steht für Betonung seines Inhalts "(" Die Betonung der Betonung betont die Bedeutung des Satzes. ").

Verwenden Sie das abbr -Element für die Einheit wäre richtig (könnte für verschiedene Anwendungsfälle nützlich sein).

In Ihren Beispielen haben Sie table mit td als childs verwendet. Dies ist kein gültiges Markup. Wenn Sie nur solche Name-Wert-Paare hätten, könnten Sie ein % co_de verwenden % :

%Vor%

Es gibt einen Entwurf für ein Mikroformat .

In der WHATWG-Version von HTML ("Living Standard") finden Sie eine dl element . Für einige Zeit war es auch Teil des W3C HTML5-Entwurfs, aber er wurde entfernt.

    
unor 22.03.2013 20:05
quelle
-1
%Vor%

Entschuldigung für Missverständnis das Problem zuvor ... richtige Antwort ist oben vor HTML5 ich benutze eine sinnvolle ID / Klasse. Kein Vorteil der Definition eigener Tags für das obige Problem.

Danke allen für die Korrektur.

    
Aamir Shahzad 22.03.2013 09:46
quelle