我标记一个包含测量单位值的表格。 我想过如何标记文档以获得最佳可访问性。 尊重值的变量值和常量名称是否重要?
我没有找到任何<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>
答案 0 :(得分:2)
HTML或数字中的测量单位没有标记,因此如果您需要为它们添加一些标记(例如,为了统一设置它们或使用客户端脚本处理它们),请使用{ {1}}数字或单位或两者都带有span
属性的元素,例如
class
(请注意,根据国际标准,数字和单位应以空格分隔,如果需要,可以是不间断的空格<td><span class=number>3.8</span> <span class=unit>g</span></td>
。
通常,单位不需要加价。或者更确切地说,没有标记我们可以用于有用的目的,并且仅仅为了它的乐趣而编写
标记会使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 <abbr title="Grams">g</abbr></td>
答案 2 :(得分:1)
使用em
作为单位/值将是不正确的(通常;当然在某些情况下它可能是合适的,但通常不是这样)。 em
element“代表其内容的压力强调”(“压力强调的位置改变了句子的含义。”)。
对单位使用abbr
element是正确的(可能对各种用例有用)。
在您的示例中,您使用table
和td
作为孩子。这不是有效的标记。如果您只有这样的名称 - 值对,则可以使用dl
:
<dl>
<dt>Brain weight</dt>
<dd>3.8 <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。没有为上述问题定义自己的标签的优势。
谢谢所有人纠正我。