文本:Time、Mark 和“表现性”
HTML5 增加并修改了一些与文本相关的标签。许多细微的修改,例如现有标签中属性的变化,已经包含在内,但本页将重点介绍两个新标签 — time 和 mark — 以及对表现性标签的重新定义。
Time
time 标签是所有这些标签中毫无疑问的“最性感的甜蜜糖果”,用于使日期和时间具有超强的语义丰富性和令人回味。
包含在开始标签和结束标签之间的文本可以是任何格式的日期或时间 — 整个精确的日期/时间,或仅一部分,例如一天。然而,通过 datetime 属性可以使其更有用,该属性的值应为机器可读的日期和/或时间。
<p>Written by Doctor Who on <time datetime="2052-11-21">Thursday 21st November 2052</time>.</p>
有效的 datetime 值可以采用年月日格式(如上),或者“模糊”日期格式,例如“2052-11”,或者时间格式,例如“09:30”(始终使用 24 小时制),或者组合格式,例如“2052-11-21 09:30”。这还可以包含时区和时长。
Mark
使用 mark 标签可以突出显示文本,就像用荧光笔标记一样。
<blockquote>
<p>He wants to play with his <mark>Legos</mark></p>
</blockquote>
<p>The person being quoted is clearly American because, for some odd reason, they pluralise "Lego".</p>
是的,这在字面上是一种强调形式,但它并不总是被视为原始意义上的强调(例如,上面引用的那个人并不是在强调“乐高”,而是评论者在强调),因此将其包含在内。
重新定义“表现性”标签
其中一个稍微有点 HTML5 中最令人厌恶的“进步”是其试图重新定义过时的表现性标签。曾经流行过,很多年前,但无论它们多么落伍,就是无法消失。这些标签也称为“Cliff Richard 标签”。
一些新定义的“坏家伙”是有用的,有些是可疑的,还有一些是强行塞入的新定义,这些定义至少可以说是牵强的。
hr,不再是“水平线”,而是 **主题分隔线**,例如在段落之间,就像在许多书的许多章节中发现的那样。small,用于 **小字**。可以说,“小字”已经有了超越“字很小的印刷品”的含义。s,不再是“删除线”,用于 **不再正确** 的文本(例如,this is <s>presentational, not</s> meaningful)。嗯。好吧。也许。不过,del标签对大多数正常人来说仍然是可接受的。u,不再是“下划线”,用于 **未明确表达** 的文本。它也“没用”,但因为缩写保持不变而加分。i,不再是“斜体”,用于 **另一种语调** 或代表不同质量的文本。所以,就像,**强调** 不同,然后(见下文)。b,不再是“粗体”,表示“不传达重要性或暗示替代语调 的文本”(即使这样也是转述)。b也代表“胡说八道”。sub和sup仍然是 **下标** 和 **上标**,但同时,它们又似乎不再是表现性的了。
增加更具体的含义是受欢迎的,但即使是有用的,这些标签仍然不是理想的 — 它们很丑陋。混乱。虽然我们热衷于语义,但我们应该对 hr 这种标签感到满意,当“H.R.”是误称时?也许是克制的幸福。
如果您还没有领会到其中的细微差别,我们建议您尽可能避免使用这些标签。它们比澄清更能污染和混淆,并且 em 标签在大多数情况下都能完美地完成工作。
