发展历史:
XML有两个先驱:SGML和HTML,这两个语言都是非常成功的标记语言,但是都有一些与生俱来的缺陷。XML正是为了解决它们的不足而诞生的。
早在Web未发明之前,SGML(Standard Generalized Markup Language,标准通用标记语言)就已存在
1989年,HTML诞生,它抛弃了SGML复杂庞大的缺点,继承了SGML的很多优点。HTML最大的特点是简单性和跨平台性
XML的产生:
随着Web应用的不断发展,HTML的局限性也越来越明显地显现了出来,如HTML无法描述数据、可读性差、搜索时间长等。人们又把目光转向SGML,再次改造SGML使之适应现在的网络需求。随着先辈的努力,1998年2月10日,W3C(World Wide Web Consortium,万维网联盟)公布XML 1.0标准,XML诞生了。
最后诞生的是XHTML,则是基于XML
html、XML都是SGML的一个子集,而XHTML则基于XML
万维网联盟(W3C)创建于1994年,是Web技术领域最具权威和影响力的国际中立性技术标准机构。W3C已发布了200多项影响深远的Web技术标准及实施指南,如广为业界采用的超文本标记语言HTML(SGML标准通用标记语言下的一个应用/子集)、可扩展标记语言XML(SGML标准通用标记语言下的一个子集)以及帮助残障人士有效获得Web信息的无障碍指南(WCAG)等
什么是HTML?
超文本标记语言(英语:HyperText Markup Language,简称:HTML)是一种用于创建网页的标准标记语言。
HTML 是用来描述网页的一种语言。
HTML 不是一种编程语言,而是一种标记语言
标记语言是一套标记标签 (markup tag)
HTML 使用标记标签来描述网页
HTML 文档包含了HTML 标签及文本内容
HTML文档也叫做 web 页面
2014年10月28日,HTML5作为稳定W3C推荐标准发布
HTML5将Web带入一个成熟的应用平台,在这个平台上,视频、音频、图像、动画以及与设备的交互都进行了规范。
什么是 XML?
XML 指可扩展标记语言(EXtensible Markup Language),可用来定义其它语言。
XML不是一种编程语言,而是一种标记语言,很像HTML。
XML 的设计宗旨是传输数据,而不是显示数据。
XML 标签没有被预定义。您需要自行定义标签。
XML 被设计为具有自我描述性。
XML 是 W3C 的推荐标准。
XML 和 HTML 之间的差异:
XML 不是 对HTML 的替代,xml不是基于html的,而是基于SGML的(历史发展)
XML 和 HTML 为不同的目的而设计:
XML 被设计用来传输和存储数据,其焦点是数据的内容。
HTML 被设计用来显示数据,其焦点是数据的外观。
HTML 旨在显示信息,而 XML 旨在传输信息。
HTML指的是超文本标记语言,用来描述网页;而XML指的是可扩展标记语言,是可以用来定义其它语言的一种元语言。html中不区分大小写,而xml中严格区分,且标签必须成对出现。
XML 是对 HTML 的补充。XML 不会替代 HTML,理解这一点很重要。在大多数 web 应用程序中,XML 用于传输数据,而 HTML 用于格式化并显示数据。
对 XML 最好的描述是:XML 是独立于软件和硬件的信息传输工具。
XHTML :可扩展超文本标记语言(英语:eXtensible HyperText Markup Language,XHTML),是一种标记语言,表现方式与超文本标记语言(HTML)类似,不过语法上更加严格。从继承关系上讲,HTML是一种基于标准通用标记语言(SGML)的应用,是一种非常灵活的置标语言,而XHTML则基于可扩展标记语言(XML)。XHTML 1.0在2000年1月26日成为W3C的推荐标准。XHTML支持自行定义标签。
语义化标签便于浏览器解析和搜索引擎解析,提高代码的课维护度和可重用性,尽可能少使用无语义标签div ,多使用有语义的标签如nav 、section
对于元素加title属性文字说明,可让搜索引擎辨别内容,是优化网页的好地方。
<a href="http://www.baidu.com" target="_blank">百度</a>
用target=“_blank”就可以让新页面在另一个窗口打开。
iframe是html元素,用于在网页中内嵌另一个网页。
严格模式: 浏览器按照 W3C 的标准解析代码,又称为标准模式。
混杂模式: 浏览器按照自己的方式来解析代码,以一种向后兼容的方式呈现。
< ! DOCTYPE> 声明叫做DTD 可声明严格模式
不加< ! DOCTYPE> 声明就是 混杂模式
HTML5 中没有 DTD ,没有严格和混杂模式的区分, HTML5 中有相对宽松的语法,尽可能实现向后兼容。请始终向 HTML5 文档添加 声明即可,这样浏览器就能获知文档类型
在 HTML 4.01 中,<!DOCTYPE> 声明引用 DTD,因为 HTML 4.01 基于 SGML。DTD
规定了标记语言的规则,这样浏览器才能正确地呈现内容。 HTML5 不基于 SGML,所以不需要引用(外部引入) DTD。 在 HTML 4.01 中有三种<!DOCTYPE> 声明引用。在 HTML5 中只有一种声明: <!DOCTYPE html>
,h5中只需要声明是html即可,不需要任何外部引用。
DOCTYPE标签是一种标准通用标记语言的文档类型声明,它的目的是要告诉标准通用标记语言解析器,它应该使用什么样的文档类型定义(DTD)来解析文档。
<!DOCTYPE html> 声明为 HTML5 文档
Web浏览器(如谷歌浏览器,Internet Explorer,Firefox,Safari)是用于读取HTML文件,并将其作为网页显示。