超文本标记语言(英语:HyperText Markup Language,简称:HTML)是一种用于创建网页的标准标记语言。HTML是一种基础技术,常与CSS、JavaScript一起被众多网站用于设计令人赏心悦目的网页、网页应用程序以及移动应用程序的用户界面。网页浏览器可以读取HTML文件,并将其渲染成可视化网页。HTML描述了一个网站的结构语义随着线索的呈现,使之成为一种标记语言而非编程语言。

HTML元素是构建网站的基石。HTML允许嵌入图像与对象,并且可以用于创建交互式表单,它被用来结构化信息——例如标题、段落和列表等等,也可用来在一定程度上描述文档的外观和语义。HTML的语言形式为尖括号包围的HTML元素(如),浏览器使用HTML标签和脚本来诠释网页内容,但不会将它们显示在页面上。

HTML可以嵌入如JavaScript的脚本语言,它们会影响HTML网页的行为。网页浏览器也可以引用层叠样式表(CSS)来定义文本和其它元素的外观与布局。维护HTML和CSS标准的组织万维网联盟(W3C)鼓励人们使用CSS替代一些用于表现的HTML元素。



超级文本标记语言文档制作不是很复杂,但功能强大,支持不同数据格式的文件镶入,这也是万维网(WWW)盛行的原因之一,其主要特点如下:

  1. 简易性:超级文本标记语言版本升级采用超集方式,从而更加灵活方便。
  2. 可扩展性:超级文本标记语言的广泛应用带来了加强功能,增加标识符等要求,超级文本标记语言采取子类元素的方式,为系统扩展带来保证。
  3. 平台无关性:虽然个人计算机大行其道,但使用MAC等其他机器的大有人在,超级文本标记语言可以使用在广泛的平台上,这也是万维网(WWW)盛行的另一个原因。
  4. 通用性:另外,HTML是网络的通用语言,一种简单、通用的全置标记语言。它允许网页制作人建立文本与图片相结合的复杂页面,这些页面可以被网上任何其他人浏览到,无论使用的是什么类型的电脑或浏览器。

发展


1980年,物理学家蒂姆·伯纳斯-李在欧洲核子研究中心(CERN)在承包工程期间,为使CERN的研究人员使用并共享文档,他提出并创建了原型系统ENQUIRE。1989年,伯纳斯-李在一份备忘录中提出了一个基于互联网的超文本系统。他规定了HTML并在1990年底写出了浏览器和服务器软件。同年,伯纳斯-李与CERN的数据系统工程师罗伯特·卡里奥联合为项目申请资助,但未被CERN正式批准。在他的个人笔记中伯纳斯-李列举了“一些使用超文本的领域”,并把百科全书列为首位。

HTML的首个公开描述出现于一个名为“HTML标签”的文件中,由蒂姆·伯纳斯-李于1991年底提及。它描述了18个元素,包括HTML初始的、相对简单的设计。除了超链接标签外,其他设计都深受CERN内部一个以标准通用标记语言(SGML)为基础的文件格式SGMLguid的影响。这些元素在HTML 4中仍有11个存在。

伯纳斯-李认为HTML是SGML的一个应用程序。1993年中期互联网工程任务组(IETF)发布了首个HTML规范的提案:“超文本标记语言(HTML)”互联网草案,由伯纳斯-李与丹·康纳利撰写。其中包括一个SGML文档类型定义来定义语法。草案于6个月后过期,不过值得注意的是其对NCSA Mosaic浏览器自定义标签从而将在线图像嵌入的行为的认可,这反映了IETF把标准立足于成功原型的理念。同样,戴夫·拉基特在1993年末提出的与之竞争的互联网草案“HTML+(超文本标记格式)”建议规范已经实现的功能,如表格与填写表单。

在HTML和HTML+的草案于1994年初到期后,IETF创建了一个HTML工作组,并在1995年完成了"HTML 2.0",这是第一个旨在成为对其后续实现标准的依据的HTML规范。

在IETF的主持下,HTML标准的进一步发展因竞争利益而遭受停滞。自1996年起,HTML规范一直由万维网联盟(W3C)维护,并由商业软件厂商出资。不过在2000年,HTML也成为了国际标准(ISO/ IEC15445:2000)。HTML 4.01于1999年末发布,进一步的勘误版本于2001年发布。2004年,网页超文本应用技术工作小组(WHATWG)开始开发HTML5,并在2008年与W3C共同交付,2014年10月28日完成标准化。


版本时间线


1995年11月24日

HTML 2.0作为IETF RFC 1866发布。追加RFC的附加功能:

  • 1995年11月25日:RFC 1867(基于表单的文件上传)
  • 1996年5月:RFC 1942(表格)
  • 1996年8月:RFC 1980(客户端图像映射)
  • 1997年1月:RFC 2070(国际化)

1997年1月14日

HTML 3.2作为W3C推荐标准发布。这是首个完全由W3C开发并标准化的版本,因IETF于1996年9月12日关闭了它的HTML工作组。

最初代号为“威尔伯”(Wilbur),HTML 3.2完全去除了数学公式,协调各种专有扩展,并采用了网景设计的大多数视觉标记标签。 网景的闪烁元素和微软的滚动元素因两家公司的相互协定而删去。HTML对数学公式的支持最后成为另外一种被称为MathML的标准。

1997年12月18日

HTML 4.0作为W3C推荐标准发布。它提供了三种变化:

  • 严格,过时的元素被禁止。
  • 过渡,过时的元素被允许。
  • 框架集,大多只与框架相关的元素被允许。

最初代号“美洲狮”(Cougar), HTML 4.0采用了许多特定浏览器的元素类型和属性,并试图淘汰网景的视觉标记功能,将其标记为不赞成使用。HTML 4是遵循ISO 8879 - SGML的SGML应用程序。

1998年4月24日

HTML 4.0进行了微调,不增加版本号。

1999年12月24日

HTML 4.01作为W3C推荐标准发布。它同样提供了三种变化,最终勘误版于2001年5月12日发布。

2000年5月

ISO/IEC 15445:2000("ISO HTML",基于HTML 4.01严格版)作为ISO/IEC国际标准发布。在ISO中这一标准位于ISO/IEC JTC 1/SC 34域(ISO/IEC联合技术委员会1、小组委员会34 – 文档描述与处理语言)。

2014年10月28日

HTML 5 作为W3C推荐标准发布。


草案时间线


1991年10月

HTML标签,一个非正式CERN文件首次公开了18个HTML标签。

1992年6月

HTML DTD的首个非正式草案, 后续有七个修订版 (7月15日,8月6日,8月18日,11月17日,11月19日,11月20日,11月22日)。

1992年11月

HTML DTD 1.1(首个版本号,基于RCS修订版,版本号从1.1开始而非1.0),非正式草案。

1993年6月

超文本标记语言由IETF IIIR工作小组作为互联网草案(一个粗略的建议标准)。在被第二版替换一个月后,IETF又发布了6个草案,最终在RFC1866中发布了HTML 2.0。

1993年11月

HTML+由IETF作为互联网草案发布,是超文本标记语言草案的一个竞争性提案。它于1994年5月到期。

1995年4月 (1995年3月编写)

HTML 3.0被提议作为IETF的标准,但直到提案在五个月过期后(1995年9月28日)仍没有进一步的行动。它包含许多拉基特HTML+提案的功能,如对表格的支持、围绕数据的文本流和复杂的数学公式的显示。W3C开始开发自己的Arena浏览器作为HTML 3和层叠样式表的试验台,但HTML 3.0并没有获得成功。浏览器厂商,包括微软和网景,选择实现HTML3草案功能的不同子集并引入它们自己的插件(见浏览器大战)。

2008年1月

HTML5由W3C作为工作草案(链接)发布。虽然HTML5的语法非常类似于SGML,但它已经放弃任何成为SGML应用程序的尝试,除了一种替代的基于XML的HTML5序列,它已明确定义了自己的“HTML”序列。

2011年 HTML5 – 最终征求

2011年5月,工作小组将HTML5推进至“最终征求”(Last Call)阶段,邀请W3C社区内外人士以确认本规范的技术可靠性。W3C开发了一套综合性测试包来实现完整规范的广泛交互操作性,完整规范的目标日期为2014年。2011年1月,WHATWG将其“HTML5”活动标准重命名为“HTML”。W3C仍然继续其发布HTML5的项目。

2012年 HTML5 – 候选推荐

2012年7月,WHATWG和W3C的工作产生一定程度的分离。W3C继续HTML5规范工作,重点放在单一明确的标准上,这被WHATWG称为“快照”。WHATWG组织则将HTML5作为一个“活动标准”(Living Standard)。活动标准的概念是从未完成但永远保持更新与改进,可以蒂姆加新特性,但功能点不会被删除。

2012年12月,W3C指定HTML5作为候选推荐阶段。 该阶段的标准为“两个100%完成,完全实现交互操作”。

2014年 HTML5 – 提案推荐与推荐

2014年9月,HTML5进入提案推荐阶段。

2014年10月28日,HTML5作为稳定W3C推荐标准发布,这意味着HTML5的标准化已经完成