我该如何在HTML5中标记测量单位? (厘米,克等)

时间:2013-03-22 09:18:05

标签: html html5 accessibility semantic-markup units-of-measurement

我标记一个包含测量单位值的表格。 我想过如何标记文档以获得最佳可访问性。 尊重值的变量值和常量名称是否重要?

我没有找到任何<value><unit>元素或此案例的相应属性。

我的三个标记方法

<table>
   <td>Brain weight</td>
   <td>3.8<em>g</em></td>
</table>

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

<table>
   <td>Brain weight</td>
   <td><em>3.8</em>g</td>
</table>

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

<table>
   <td>Brain weight</td>
   <td>3.8<abbr title="Grams">g</abbr></td>
</table>

4 个答案:

答案 0 :(得分:2)

HTML或数字中的测量单位没有标记,因此如果您需要为它们添加一些标记(例如,为了统一设置它们或使用客户端脚本处理它们),请使用{ {1}}数字或单位或两者都带有span属性的元素,例如

class

(请注意,根据国际标准,数字和单位应以空格分隔,如果需要,可以是不间断的空格<td><span class=number>3.8</span> <span class=unit>g</span></td>

通常,单位不需要加价。或者更确切地说,没有标记我们可以用于有用的目的,并且仅仅为了它的乐趣而编写&nbsp;标记会使HTML代码的可读性降低。

但是,在某些解释中,单位的符号是缩写,因此可以使用span标记。请注意,默认情况下,在大多数浏览器中,(底部边框)下方会出现虚线,这是一个非常恼人的功能;要删除它,请在CSS中设置abbr。从本质上讲,单位的符号是常规符号而不是缩写。

abbr { border: none }title或其他元素上使用span属性会使某些辅助软件在用户请求时显示属性值。它也倾向于在常见浏览器的工具提示中显示它。这些“提示”是否有用而不仅仅是对众所周知的符号的干扰是值得怀疑的。

使用abbr意味着原则上强调,这很难被占用,并且会导致斜体在实践中使用。按国际标准,单位符号不得用斜体字表示。虽然你可以使用CSS来删除斜体,但使用往往会导致它的标记会很奇怪。

答案 1 :(得分:2)

我非常喜欢使用abbr标记添加上下文信息和改善可访问性的第三种方法。这是一个好主意。

但是,您的两个标记都不完全符合国际单位制的规定。见http://en.wikipedia.org/wiki/International_System_of_Units

您必须将值和单位分隔一个空格字符。

 <td>3.8&nbsp;<abbr title="Grams">g</abbr></td>

答案 2 :(得分:1)

使用em作为单位/值将是不正确的(通常;当然在某些情况下它可能是合适的,但通常不是这样)。 em element“代表其内容的压力强调”(“压力强调的位置改变了句子的含义。”)。

对单位使用abbr element是正确的(可能对各种用例有用)。

在您的示例中,您使用tabletd作为孩子。这不是有效的标记。如果您只有这样的名称 - 值对,则可以使用dl

<dl>
  <dt>Brain weight</dt>
  <dd>3.8&nbsp;<abbr title="grams">g</abbr></dd>
</dl>

measure microformat的草稿。


在WHATWG版本的HTML(“生活标准”)中,您可以找到data element。有一段时间它也是W3C HTML5草案的一部分,但它已被删除。

答案 3 :(得分:-1)

<abbr title="Grams">g</abbr>

对错误理解此问题的道歉...正确答案在html5之前,我使用了一个有意义的id / class。没有为上述问题定义自己的标签的优势。

谢谢所有人纠正我。