HTML的全称为超文本标记语言 (HyperText Markup Language),是用来描述网页的一种语言,是由W3C(World Wide Web Consortium,
万维网联盟)推荐发布的通用国际标准。不同于
C++、
Python 等编程语言,HTML 是一种标记语言,由一套标记标签(markup tag)构成的。HTML 使用标记标签来描述网页。在纯
文本文件中包含了HTML 的指令代码,在 HTML 中,每个标签(Tag)都是一条指令,用来告诉浏览器如何将图片、声音、文字、影像等在页面中显示出来。HTML文档又称为 Web 页面。
HTML 的前身为Web的发明者Tim Bemers-
Lee(
蒂姆·李)和其同事Daniel W.Connolly(丹尼尔·康诺利)于1990年创立SGML。1993年发布HTML的首个版本,它是IETF(
互联网工程任务组)团队的一个草案,之后相继推出了HTML 2.0/3.2/4.0/5.0版本,在此过程中,
万维网联盟还推出了XHTML,但由于其没有反映出网站开发人员在网页上的交互操作,也未能将网页上已有的内容往后兼容等原因最终宣告失败。
HTML的基本结构包括HTML的语法结构,文档结构、标签的格式以及代码的编写规范等。HTML具有简易性、可扩展性、平台无关性、通用性等特点。在发展过程中,
html5从根本上改变了IT公司开发Web应用的方式,无论是电脑端应用还是移动端应用,在开发过程中都需要用到此技术。截至2023年,HTML5的主要版本有IE、
Google Chrome、Firefox、
Safari和
欧朋浏览器,同时随着科技的发展,
谷歌、
亚马逊、You Tube等大型互联网公司已经开始关注HTML5。
发展历史
HTML +
1980年,物理学家
蒂姆·李在欧洲核子研究中心(CERN)在承包工程期间,为使CERN的研究人员使用并共享文档,他提出并创建原型系统ENQUIRE。1989年,伯纳斯-李在一份
备忘录中提出一个基于互联网的超文本系统。他规定HTML并在1990年底写出浏览器和服务器软件。同年,伯纳斯-李与CERN的数据系统工程师
罗伯特·卡里奥联合为项目申请资助,但未被CERN正式批准。在他的个人笔记中伯纳斯-李列举“一些使用
超文本的领域”,并把
百科全书列为首位。
HTML最早源于SGML,它由蒂姆·伯纳斯·李和其同事Daniel W.Connolly(丹尼尔·康诺利)于1990年创立。HTML的首个公开描述出现于1991年,是由
蒂姆·李编写了一份叫做“HTML 标签”的文档,里面包含了大约 20个用来标记网页的HTML标签。HTML最初的版本并不存在HTML 1,在1993年IETF(
互联网工程任务组)团队的一个草案,并非成型的标准,被称为“HTML+”,最初是被设计成为“HTML 的一个超集”。
HTML 2和HTML 3
在1995年,HTML 2.0版本发布,当时是作为RFC1866发布的,1995年3月,
万维网联盟提出HTML 3.0规范,其提供了很多新的特性,例如表格文字绕排和复杂数学元素的显示。虽然它是被设计用来兼容 2.0 版本的,但由于实现起来过于复杂,在草案于1995年9月过期时,标准开发也因为缺乏浏览器支持而中止了。3.1 版从未被正式提出。1997年1月14日,HTML 3.2成为W3C推荐标准,在HTML3.2中,它去掉了大部分 3.0 中的新特性,加入了很多特定浏览器如
网景 和 Mosaic 的元素和属性。
HTML 4
在1997年12月18日和1999年12月24日发布的4.0和4.01也相继成为W3C的推荐标准。其中新版本同样也加人了很多特定浏览器的元素和属性,但是同时也开始“清理”这个标准,把一些元素和属性标记为过时,建议不再使用它们。
而在 HTML4.01 版本发布的当年,W3C 对 HTML 未来的发展做了分析,他们认为 HTML 的形式与内容无法分离,且标记单一,前途堪忧。于是 W3C 转向语言更加规范的
XML,但是从1991 年HTML 出现到 1999 年的8 年时间里,互联网上已经有成千上万由 HTML编写的网页,直接转向 XML 是不现实的,所以 W3C 只能放慢脚步,开始HTML到XML的过渡,因此出现了XHTML。
XHTML
XHTML(eXtensible Hyper Text Markup Language,扩展的超文本标记语言)是一种在HTML 4.0基础上优化和改进的新语言,目的是基于
XML应用。同时它和HTML 4.01具有良好的
兼容性,而且XHTML是更严格、更纯净的HTML代码。
万维网联盟在2000年推出了XHTML 1.0,它以XML的语法重新整理了HTML 4.0,使其具有类似XML严谨的语法规则。2001 年5月31日发布了XHTML1.1。2002年继续推出了XHTML 2.0,但由于其没有反映出网站开发人员在网页上的交互操作,也未能将网页上已有的内容往后兼容等,最终XHTML 2.0宣告失败。
HTML 5
HTML的前身名为Web Applications 1.0,由
超文本应用技术工作小组(Web Hypertext Application Technology Working Group,简称WHATWG)在2004年提出,2007年被W3C接纳,随后W3C成立了由
美国在线公司、Apple、
谷歌、IBM等数百个开发商组成的新的HTML工作团队,2009年,该团队公布了HTML 5正式草案,HTML 5成为HTML和HTMLDOM的新标准,2012年12月17日,W3C宣布HTML 5规范正式定稿。
HTML 5在开发时就考虑到了后期的开发任务,因此它可以向后兼容,且包含了HTML 4.0的全部特性,并进行了少量的修改与改善。2014年,W3C宣布,HTML 5制作完成并公开发布。在HTML 5中,新增了article(文章)、aside(侧边)、footer(尾部)等
语义化标签,这些新增的语义标签有利于
搜索引擎优化,同时在高版本的浏览器及移动端中,不用考虑语义标签的
兼容性。在2014年10月28日,HTML 5也正式成为W3C推荐标准。
重要版本
参考文献:
基本结构
以HTML的基本结构包括HTML的语法结构,文档结构、标签的格式以及代码的编写规范等。
语法结构
标签(Tag)
HTML文档由标签(“\u003c”和"\u003e"括起来的单词或单词缩写)和受标签影响的内容(为字符串,用于描述网页文件内容的类型、组成和格式化信息)组成。标签能产生所需的各种效果,其功能类似于一个
排版软件。标签通常由开始标签和结束标签组成,开始标签用“\u003c标签\u003e”表示,结束标签用“\u003c/标签\u003e”表示,其格式为\u003c标签\u003e受标签影响的内容\u003c/标签\u003e。HTML 标签对大小写不敏感,但 W3C在 HTML4中开始推荐使用小写。
HTML注释标签是一个特殊标签,它的格式为\u003c!--在此处写注释--\u003e,在开始标签中有一个感叹号,然后是两个减号,在结束标签中没有感叹号,浏览器并不会显示注释的内容,注释标记可以帮助设计者标注并理解HTML文档内容。
参考文献:
属性
标签通过属性来制作出各种效果,属性和属性值始终被包含在元素的开始标签中,且不能单独使用,通常都是以“属性名="值"”的形式来表示,用空格隔开后,还可以指定多个属性,并且在指定多个属性时不用区分顺序。其格式为\u003c标签 属性1=“属性值1” 属性2=“属性值2” ...\u003e受标签影响的内容\u003c/标签\u003e。
在
html5中,很多元素会重复出现,为了区分重复元素,可以在开始标签中使用ID属性给每一个元素定义一个唯一的标识,ID属性的属性值在文件中也必须是唯一的。
HTML中的全局属性对任何HTML元素有效,常用的全局属性为:
参考文献:
元素
截至2020年,HTML5拥有120个元素,其中有10个不建议使用的元素。元素是指位于开始标签与结束标签之间包含在标签中在内的整体,它通过HTML5标签进行定义,是构建网页的基本结构,由标签和属性组成,元素可以嵌套但不能交叉。没有内容的HTML元素被称为空元素。空元素是在开始标签中关闭的。元素的大体结构为\u003cdiv class="main"\u003e元素内容\u003c/div\u003e。
按用途区分,HTML可分为文档结构元素、头部元素、列表元素、超链接元素等。
参考文献:
编写规范
HTML的书写需满足HTML的相关规范。在HTML 4.0中主要用于在浏览器中星现富文本内容和实现超链接,
html5 继承了这些特点但更侧重于在浏览器中实现 Web 应用程序。对于网页的制作,HTML5 主要有两方面的改进,即实现 Web 应用程序和更好地呈现内容。
标签的规范
属性的规范
元素的嵌套
代码的缩进
HTML 代码并不要求在书写时缩进,但为了文档的结构性和层次性,建议初学者在使用标记时首尾对齐,内部的内容向右缩进几格。
文档结构
文档类型
在编写HTML 5文档时,要求指定文档类型。文档类型用于向浏览器进行页面解析用的DTD(文档类型定义)文件。文档类型声明的格式为\u003c! DOCTYPE html\u003e,其中doctype是document type(文档类型)的简写,doctype声明须放在每一个HTML文档的最顶端,在所有代码和标签之前,若没有声明文档类型,浏览器将会使用
怪异模式。
HTML文档标签\u003chtml\u003e...\u003c/html\u003e
HTML文档标签的格式为\u003chtml\u003eHTML文档的内容\u003c/html\u003e,其中\u003chtml\u003e处于文档的最前面,表示HTML文档的开始,即浏览器从\u003chtml\u003e开始解释,直至\u003c/html\u003e为止。
HTML文档头标签\u003chead\u003e...\u003c/head\u003e
HTML文档包括头部(head)和主体(body),其中文档头标签用于定义文件
页眉,它是一种具有引导和导航作用的结构元素,其格式为\u003chead\u003e头部的内容\u003c/head\u003e,文档头部内容在开始标签\u003chtml\u003e和结束标签\u003c/html\u003e之间,其内容可以是标题名或
文本文件地址、创作信息等网页信息说明。它本身
不作为内容来显示,但影响网页显示的效果。
HTML文档编码
为了被浏览器正确解释和通过 W3C 代码校验,所有的 HTML 文档都必须声明它们所使用的语言编码。文档声明的编码应该与实际的编码一致,否则就会呈现为乱码。UTF-8 是世界通用的HTML语言编码,用户一般使用UTF-8 来指定文档编码。其中
html5文档直接使用meta元素的charset 属性指定文档编码,格式为\u003cmeta charset="uTF-8"\u003e。
HTML文档主体标签\u003cbody\u003e...\u003c/body\u003e
HTML文档主体标签格式为\u003cbody\u003e网页的内容\u003c/body\u003e。主体位于头部之后,以\u003cbody\u003e为开始标签,\u003c/body\u003e为结束标签。它定义网页上显示的主要内容与显示格式,是整个网页的核心。用户可以通过浏览器看到写在主体标签间的内容。
编辑器
HTML其实就是文本,它需要浏览器的解释,它的编辑软件大体可以分为以下3种。
基本文本文档编辑软件:使用 Windows自带的记事本或写字板程序就可以编写,不过保存时需要使用.htm 或.html作为扩展名,这样方便浏览器直接运行。
半所见即所得软件:这种软件能大大提高开发效率,让制作者在很短的时间内制作出主页,且可以学习HTML,这种类型的软件主要有网页作坊、Amaya和HOTDOG等。
所见即所得软件:使用最广泛的编辑软件,即使用户完全不懂HTML的知识,也可以制作出网页,这类软件有
Adobe Dreamweaver等。与半所见即所得软件相比,这类软件开发速度更快,效率更高,且直观表现力更强,对任何地方进行修改只需要刷新即可。
分发方式
当Web 服务器
计算机通过 Internet 发送 Web 页时,使用HTTP(Hypertext TransferProtocol,
超文本传输协议) 信息交换标准。然而,把页面上传到 Web 站点时,需要的软件通常使用比较老的通信标准,叫做
断点续传(
File Transfer Protocol,文件传输协议)。
它可以通过
网景、
微软 IE、Microsoft FrontPage和
CuteFTP来发送页面,这些软件中,Microsoft FrontPage适用于开发复杂的 Web 站点,帮助管理页面之间的链接更改,自动跟踪哪个页面已经改变及哪个页面需要更新,节省用户许多时间。CuteFTP适用于刚入门的 Web 页作者和只计划有几个个人页面或企业贞面的中型站点。若用户仅仅想要使第1个页面在线,根本不打算装配任何新的软件,可以使用IE或
网景 完成工作。
HTML的语言特点
简易性:HTML版本升级采用超集方式,从而更加灵活方便。
可扩展性:HTML 的广泛应用带来了加强功能,增加
标识符等要求,HTML 采取子类元素的方式,为系统扩展带来保证。
平台无关性:虽然
personal computer系统比较多,包括
Windows、
Linux、
麦金塔、
Android 等,HTML可以使用在广泛的平台上。
通用性:HTML 是网络的通用语言,一种简单、通用的全置标记语言。它允许网页制作者建立文本与图片相结合的复杂页面,这些页面可以被网上任何其他人浏览到,无论使用的是什么类型的
计算机或浏览器。
发展趋势
html5从根本上改变了IT公司开发Web应用的方式,无论是电脑端应用还是移动端应用,在开发过程中都需要用到此技术。
截至2023年,HTML5的主要的浏览器版本有IE、
Google Chrome、Firefox、
Safari和Opera,其他如
谷歌、亚马逊、You Tube等公司已经开始关注HTML5并开始逐步使用其作为自己的开发工具。在多种网络
编程语言兴起的时候,HTMI5必须能够尽可能多地兼容这些语言,并提供一个良好的编程环境。因此,简洁的界面和良好的交成了发展的重点。同时与
层叠样式表 的结合将非常关键。此外,
html5正在不断推进移动互联网向更加开放融合的Web云服务模式转变。
差异性