html, xhtml和xml
html, xhtml和xml
1.定义及特点:
1) html:Hyper Text Markup Language 超文本标记语言 是最早写网页的语言,但编码不规范,主要用于控制数据的显示和外观。语法较为松散,不严谨的web语言;
① 简易性:超级文本标记语言版本升级采用超集方式,从而更加灵活方便。
② 可扩展性:超级文本标记语言的广泛应用带来了加强功能,增加标识符等要求,超级文本标记语言采取子类元素的方式,为系统扩展带来保证。
③ 平台无关性:虽然个人计算机大行其道,但使用mac等其他机器的大有人在,超级文本标记语言可以使用在广泛的平台上,这也是万维网(www)盛行的另一个原因。
④ 通用性:另外,html是网络的通用语言,一种简单、通用的全置标记语言。它允许网页制作人建立文本与图片相结合的复杂页面,这些页面可以被网上任何其他人浏览到,无论使用的是什么类型的电脑或浏览器。
2) xhtml:eXtensibale Hyper Text Markup Language 可扩展的超文本标记语言 其实就是严谨而准确的html, 对html进行了规范,编码更加严谨,是一种过渡语言,html向xml过渡的语言;
Html与xhtml的发展历程:
- HTML 1.0——1993年6月发为互联网工程工作小组 (IETF)工作草案发布(并非标准).
- HTML 2.0——1995年11月作为RFC 1866发布,在RFC 2854于2000年6月发布之后被宣布已经过时
- HTML 3.2——1996年1月14日,W3C推荐标准
- HTML 4.0——1997年12月18日,W3C推荐标准
- HTML 4.01(微小改进)——1999年12月24日,W3C推荐标准
- ISO/IEC 15445:2000(“ISO HTML”)——2000年5月15日发布,基于严格的HTML 4.01语法,是国际标准化组织和国际电工委员会的标准
- XHTML 1.0——发布于2000年1月26日,是W3C推荐标准,后来经过修订于2002年8月1日重新发布。
- XHTML 1.1 -- 于2001年5月31日发布
3) XML:eXtensibale Markup language可扩展性标记语言 是一种跨平台语言,编码更自由。提供一种描述结构化数据的方法,用于定义数据本身的结构和数据类型,可扩展。
W3C意识到HTML的不足:
- 不能解决所有解释数据的问题 - 像是影音文件或化学公式、音乐符号等其它型态的内容;
- 效能问题 - 需要下载整份文件,才能开始对文件做搜寻的动作;
- 扩充性、弹性、易读性均不佳;
为了解决以上问题,专家们使用SGML精简制作,并依照HTML的发展经验,产生出一套使用上规则严谨,但是简单的描述数据语言:XML。 XML是一个以更中立的方式,让消费端自行决定要如何消化、呈现从服务端所提供的信息。XML目的即在于提供一个对信息能够做精准描述的机制,藉以弥补 HTML 太过于表现导向的特质。
- 网页编码从html=>xhtml=>xml 进一步发展。
2.三者的区别:
- Xhtml与html相比:
1) xhtml具有良好的排版和规范,要求:a.元素必须有结束标签;b.元素必须正确嵌套;
2) xhtml的属性值必须在引号之中;
3) xhtml不支持属性最小化(minimized attributes)即为:<input disabled>是不对的,必须<input disabled='disabled’>
4) Xhtml中name属性是不赞成使用的,在以后的版本将被删除
- Xml与html相比:
1) Xml规范比较严谨,比如:严格区分大小写
2) Xml标签必须闭合,包括空标签
3) Xml必须有且仅有一个根标签
4) Xml的标签可自定义
- 根据这样的进化过程,Html有可能逐步被xml所取代,xml是一种更强大的语言,更灵活。
---初来乍到,知识欠缺,不足之处,欢迎指正...
参考文献:
[1]W3C标准
[2]《css权威指南》(第三版)
[3] http://wenku.baidu.com/ 百度文库
html, xhtml和xml的更多相关文章
- 那点你不知道的XHtml(Xml+Html)语法知识(DTD、XSD)
什么是XHtml: 摘录网上的一句话,XHTML就是一个扮演着类似HTML的角色的XML. XHtml可当模板引擎应用: CYQ.Data 框架里有一套XHtmlAction模板引擎, 应用在QBlo ...
- html,xhtml和xml
html,xhtml和xml的定义: 1.html即是超文本标记语言(Hyper Text Markup Language),是最早写网页的语言,但是由于时间早,规范不是很好,大小写混写且编码不规范: ...
- XHtml(Xml+Html)语法知识(DTD、XSD)
那点你不知道的XHtml(Xml+Html)语法知识(DTD.XSD) 什么是XHtml: 摘录网上的一句话,XHTML就是一个扮演着类似HTML的角色的XML. XHtml可当模板引擎应用: CYQ ...
- htm,html,xhtml,xml,xsl,dhtml,shtm和shtml的区分
介绍一下htm,html,xhtml,xml,shtml的区分,以下内容来自百度后的知识整理. HTML和htm: HTML(Hypertext Markup Language)超文本传输语言,是ww ...
- Web客户端语言HTML、XHTML和XML相关知识介绍
HTML简介 HTML(Hyper Text Mark-up Language)即超文本标记语言或超文本链接标示语言,是目前网络上应用最为广泛的语言,也是构成网页文档的主要语言.HTML文本是由HTM ...
- xml ,html,xhtml
html,xhtml和xml的定义: 1.html即是超文本标记语言(Hyper Text Markup Language),是最早写网页的语言,但是由于时间早,规范不是很好,大小写混写且编码不规范: ...
- XML简介与CDATA解释
简介XML 是一种受到广泛支持的 Internet 标准,用于以一种特殊的方式编码结构化数据.实际上,以 XML 编码的数据可以通过任何编程语言解码,人们甚至可以使用标准的文本编辑器来阅读或编写 XM ...
- XML 基础
linux下xml编辑器 vim gedit editix wonderful;免费30天;可以进行有效性检查 xerces oxygen 收费 xmlcopyedit serna free 是ser ...
- php中通过DOM操作XML
DOM文档在js里早就接触过,知道DOM不但可以操作html文档,还可以操作XHTML,XML等文档,有着极强的通用性,下面我们通过两个小例子,看看在PHP中是如何用DOM操作XML文档的,和js中差 ...
随机推荐
- 简单的 JSON 对象进行深拷贝最简单的方法
var json = { a: 123, b: '456' }; var json2 = JSON.parse(JSON.stringify(json)); 只需要先使用 JSON.stringify ...
- C-随笔
C语言的设计哲学之一: 程序员知道自己在干什么-没有安全带! 值的类型并不是值的内在本质, 而是取决于它被使用的方式 1.#include <stdio.h>在预处理器处理的时候把stdi ...
- maven2 com.jhlabs.imaging 01012005 maven安装jar包imaging命令
com.jhlabs:imaging:jar:01012005 所在仓库+captcha验证码maven依赖 maven 安装jar包 到本地仓库 命令maven 3.0安装jar包 到本地仓库 co ...
- C# 隐式类型转换
implicit(C# 参考) implicit 关键字用于声明隐式的用户定义类型转换运算符.如果可以确保转换过程不会造成数据丢失,则可使用该关键字在用户定义类型和其他类型之间进行隐式转换. clas ...
- DBA-mysql-init-password-5.7
1.Mysql5.7 Password; 查找临时密码:grep "A temporary password" /var/log/mysqld.log 修改临时密码:alter ...
- TCP打洞和UDP打洞的区别 (转)
为什么网上讲到的P2P打洞基本上都是基于UDP协议的打洞?难道TCP不可能打洞?还是TCP打洞难于实现? 假设现在有内网客户端A和内网客户端B,有公网服务端S. 如果A和B想要进行UD ...
- 【android】Android am命令使用
一.开启Activity.服务.广播 1.开启Activity.服务.广播基础知识 通过adb shell,可以使用activity manager(arm)工具来执行不同的系统操作,如开启一个act ...
- HTML meta 头部的一些内容
<meta name="viewport" content="width=device-width,initial-scale=1.0,user-scalable= ...
- MyBatis学习(三)、动态SQL语句
三.动态SQL语句 有些时候,sql语句where条件中,需要一些安全判断,例如按某一条件查询时如果传入的参数是空,此时查询出的结果很可能是空的,也许我们需要参数为空时,是查出全部的信息.使用Orac ...
- (PHP)程序中如何判断当前用户终端是手机等移动终端
推荐: Mobile-Detect:https://github.com/serbanghita/Mobile-Detect/blob/master/Mobile_Detect.php Detect ...