33

下划线的使用是否已弃用且未经验证?

4

10 回答 10

56

它在 HTML 4 http://www.w3.org/TR/REC-html40/present/graphics.html#edef-U中已弃用,因此无法验证。

改用样式。也许是一个<span>标签。虽然,如果您想要在不启用样式的情况下强调要添加下划线的内容。使用<em>标签并使用 CSS 为其添加下划线。

于 2010-01-21T16:20:01.247 回答
20

是的,它已被弃用。改用样式。另请注意,带下划线的文本可能会造成混淆,因为它类似于链接的默认样式,并且可能会使某些用户感到沮丧。

如果您愿意,您甚至可以重新利用另一个 HTML 元素,例如em

CSS:

em {
  font-style: normal;         /* Removes italics */
  text-decoration: underline; /* Makes underline */
}

HTML:

<p>I like to <em>underline</em> words.</p>
于 2010-01-21T16:17:00.643 回答
8

<咆哮>

关于“语义与风格”的一般评论:虽然这当然是事实,但这是一些人学得太多的教训。

在现实生活中,许多人使用斜体来强调。当然,我可以创建“span.emphasized { font-style: italic;}”的 CSS 样式,然后在强调的文本周围放置“<i></i>”,而不是放置“<span class='emphasized '></span>”。除了大量额外的打字之外,这究竟能带来什么?

此外,还有一百万个理由让我想把一段文字放在斜体上。也许是一本书的名字;也许我想强调它;也许我正在使用斜体外语的惯例;等等。如果我在一个文档中有 10 个单词由于 9 个不同的原因用斜体表示,那么迂腐的答案是我应该创建 9 个不同的 CSS 样式条目来描述所有这些原因。就个人而言,我几乎从不这样做,因为它一无所获。是的,理论上我可能会决定书名应该是草书字体而不是斜体或类似的字体。在实践中,这种情况发生的概率非常接近于零,如果发生这种情况,并且我的文档中有两个这样的书名,我可以将其更改两次。从理论上讲,有人可能想用一个查找书名的程序来扫描我的文本。

我并不是说 CSS 没用。恰恰相反。当我有一个语义对象在我的文本中重复多次,并且没有“自然”的、被广泛认可的风格时,假设我继续处理文档时我可能想要更改风格。在这种情况下,更改单个 CSS 条目比更改一百个实例要容易得多。或者我可能想在不同的情况下使用不同的样式,例如在屏幕上显示时将警告消息以红色显示,但在打印黑白文档时将它们以粗体显示。

例如,我经常使用 CSS 来引用引用,因为我经常改变对斜体、缩进和字体大小的看法。我从不将 CSS 用于我想要斜体以强调的文本,因为我知道我极不可能将它呈现为斜体以外的任何内容。

我的意思是,我不在乎某个学究说“这是您必须始终遵守的规则。您问为什么必须遵守它?但我只是告诉您!因为这是规则!” 我使用在本申请中有用的工具和技术。(是的,是的,有很多经验法则在 99% 的时间里都是有效的,除非出现罕见的例外情况,否则不值得考虑。)

</rant>

于 2010-01-21T18:20:24.907 回答
5

<u>标签已被弃用,取而代之的是样式表。

大多数浏览器将在很长一段时间内继续识别它,只是出于与现有内容向后兼容的需要。但是如果你想通过 XHTML 兼容,你应该避免使用它。

您可以在此处阅读有关不推荐使用的 HTML 标记的更多信息。

于 2010-01-21T16:17:33.200 回答
2

是的,它在 HTML 4 中已被弃用。但是,您可以只使用以下 css。

span.underline { text-decoration: underline; }

但是,下划线的类名不是语义的。您可能希望将其替换为描述您需要下划线的内容的类名。

于 2010-01-21T16:18:32.570 回答
1

该标签已弃用,但并未过时。它没有过时的原因是允许浏览器支持该元素以实现向后兼容性。

该标签未在xhtml1-strict.dtd中定义,但在xhtml1-frameset.dtdxhtml1-transitional.dtd下可用。它的声明如下(不在 Strict DTD 上):

<!ELEMENT u %Inline;>   <!-- underline -->
<!ATTLIST u %attrs;>

这是为了允许与浏览器向后兼容。

不要将标签用作“此标签已被弃用以支持样式表”。它可能很快就会过时。而是使用样式表,例如

/** Underlining an anchor tag in CSS **/
a {
    text-decoration: underline;
}
于 2010-01-21T18:55:59.163 回答
0

已弃用:是的。
已验证: ? 我想这取决于您使用什么来验证它。

http://www.codehelp.co.uk/html/deprecated.html

于 2010-01-21T16:17:16.940 回答
0

是的,它已被弃用。

于 2010-01-21T16:17:32.170 回答
0

您用 XHTML 和 HTML 标记了您的问题。在 xhtml-strict 中绝对不推荐使用 U 标签。我认为它在 HTML-4-Transitional 中可能仍然可以。正如其他人所说,改用样式。凭借好名字,它们为您的文档提供了更多语义。

于 2010-01-21T16:18:20.637 回答
0

如果您使用的是最新版本的 HTML 或 XHTML,那么是的,它已被弃用。无论如何,一般来说,您希望避免在非链接的任何内容下划线,因为它会使用户更加困惑。

于 2010-01-21T16:22:03.120 回答