哪些技术是 HTML5 规范的一部分?

Which technologies are part of the HTML5 specification?

时隔几年再次遇到这个问题,想更新一下,以前看的不是很清楚。作为 Web 开发人员,我们处理许多不同的 Web 技术,大多数人只是将它们归入 HTML5,但显然并非所有技术实际上都是 HTML5 的一部分。所以问题是,哪些技术是 HTML5 的一部分,哪些只是其他网络技术。

当我最初在 2015 年问这个问题时,HTML5 规范还比较新,还不是很清楚,哪些技术属于 HTML5,哪些技术通常被称为 HTML5。造成这种混淆的主要原因之一是 W3C 和 WHATWG 发布的竞争 HTML 标准的存在,它们考虑了 HTML5 的不同技术部分。这些标准最初非常相似,但随着时间的推移,由于不同的设计决策,差异越来越大。 HTML5 Wikipedia article 中使用的下图,清楚地显示 如何在 HTML5.

的上下文中对不同的技术进行分类

2019 年,W3C 和 WHATWG 一致同意只有 WHATWG 继续致力于 HTML 标准,从而解决标准之间的冲突。为了知道什么是现在 HTML5 的一部分,我们可以简单地查看 WHATWG 提供的 HTML Living Standard 以查看哪些技术被定义为 HTML5 的一部分。

来自MDN,

HTML5 is the latest evolution of the standard that defines HTML. The term represents two different concepts:

  • It is a new version of the language HTML, with new elements, attributes, and behaviors,
  • and a larger set of technologies that allows more diverse and powerful Web sites and applications. This set is sometimes called HTML5 & friends and often shortened to just HTML5.

因此,从第一种意义上说,它们不属于 HTML5,但属于第二种。