<dl>
定义列表,我不记得上一次使用这个标签是什么时候了。不仅如此,还有一些标签存在更好、更高效的版本或者只是明显的冗余,例如
<strong>
和<b>
,<basefont>
和<font>
等等。作为开发人员,你认为哪些标签可以被忽略,因为我们有了更好的版本?
<dl>
定义列表,我不记得上一次使用这个标签是什么时候了。<strong>
和<b>
,<basefont>
和<font>
等等。B
和STRONG
不是同一件事,I
和EM
也不是。
EM
表示应该强调文本。这就表明了文本应该如何被解释,屏幕阅读器(文字转语音)等都能理解它的逻辑含义。而I
则仅仅告诉HTML渲染器将文本呈现为斜体,并没有关于语义的信息。因此,在文本中进行强调时,请使用EM
。如果您需要在某些情况下将一小段文本以斜体呈现,而又不意味着这段文本应该被强调,那么可以使用I
。
STRONG
和B
的情况也是如此。
然而,我真的不喜欢FONT
,因为它没有提供任何关于语义的信息。对于标题,请使用Hn
,对于强调,请使用EM
,对于代码,请使用CODE
等。如果您在某些情境中缺少某些标签,请定义一个CSS规则。
<p class="footer">...</p>
或者
<p>This is <strong class="extraordinaryEmphasis">extremely</strong> important.</p>
blink
标签这样的元素。
现在,STRONG和B具有不同的语义含义。花费了很多精力来清理这样的语义模糊的元素。甚至HR也得到了一些关注。
我个人经常使用DL。它是我的工作马匹KeyValuePair类型。有时候,我希望它有更严格的语义,但其他时候,我感谢它在允许我在上下文中定义其语义方面的灵活性。
我想这取决于你对“无用”的定义,我认为它意味着“完全没有实际用途”。我真的不知道HTML5中有任何元素在任何情况下都不会使用。
<code>是无用的。除非你是Perl一行代码的粉丝。它本应该是创建<pre>块的语义方式-那将会很有用。
<embed>是无用的。它与<object>重复,而且比<object>功能更弱。
<small>是无用的。它没有语义意义,应该使用CSS来实现。
这些是我认为最无用的三个标签,它们被纳入了HTML5规范。
video
标签则可以取代它。现在,如果“embed”也可以嵌入.html片段(就像iframe一样,但是内联在DOM中),那么它将非常有用于网站组合,而不需要客户端JS或服务器端构建框架。 - Dwayne Robinson我认为任何指示应该在CSS中完成的事情都应该避免。这包括:
<b>,<strong>
<i>,<em>
<center>
<u>,<strike>
我最不喜欢的标签是<font>
,因为它完全没有意义,在所有情况下都应该用<span>
标签替换。
个人认为,最好避免使用应该用CSS完成的HTML属性,例如“color”和“border”。