12

关于 HTML,术语“过时”和“弃用”之间有什么区别?我似乎看到很多元素在 HTML5 中被标记为“过时”......

4

4 回答 4

10

在 HTML 4.01 规范中,第4.1 节定义将“弃用”和“过时”定义为技术术语。简而言之,不推荐使用的功能是您不应该使用的,但浏览器应该继续支持它。过时的功能只是出于历史目的而列出,未定义,并且不需要浏览器支持(尽管实际上它通常仍然存在)。HTML 4.01 声明大多数旧的表示元素和属性已弃用。只有少数非常不重要的元素在那里被宣布为过时的。

在 W3C HTML5 草案中,术语是不同的。它根本没有使用“弃用”这个词(除非在 HTML 4.01 中提到使用这个词)。它没有将“过时”定义为技术术语(适用于 HTML 的功能),但它大量使用了这个词。该词在11 个过时的功能部分中隐含定义。该草案告诉,根据功能的不同,语气和专业有所不同,作者不要使用过时的功能,但希望浏览器继续支持它们。它还包含对其语法和语义的详细描述,部分甚至比旧规范更详细。

在 HTML5 草案中,大部分过时的特性也被归类为“不合格”,并声明它们“不得被作者使用”。这些功能涵盖了 HTML 4.01 中已弃用的大部分功能,以及更多功能,包括 HTML 4.01 中根本没有的功能。

例如,该font元素在 HTML 4.01 中已弃用,在 HTML5 中已过时。所以原则上,你不应该使用 HTML 4.01,HTML5 说你不应该使用它(并且 HTML5 验证器被告知发出错误消息,而不仅仅是警告)。在实践中,差异较小,主要只是原则问题。浏览器仍然需要解析元素并将其添加到文档树中,并且它们应该像以前一样实现它。

于 2012-08-02T20:14:44.027 回答
8

字典很好地讲述了这个故事:

已弃用:表示不赞成。

过时的:不再生产或使用;过时了。

建议您不要使用不推荐使用的元素,因为它们将来可能不会被支持,而过时的元素已经停止使用。

于 2012-08-02T19:19:48.130 回答
0

过时通常意味着它已被其他东西取代。

已弃用意味着未来的发展可能不支持它。

于 2012-08-02T19:19:16.387 回答
0

在您的问题中,您引用了一篇博客文章,该文章随后链接到有关过时元素的 W3 规范。

http://www.w3.org/TR/html5/obsolete.html#obsolete

因此,由于您链接到的博客回避,永远不应使用过时的元素,有可用的替代品。对于不推荐使用的元素,浏览器通常仍会支持并呈现它们以实现向后兼容性,但您的页面不会通过一致性验证。

于 2012-08-02T19:22:04.230 回答