一、什么是 HTML?
HTML 是用来描述网页的一种语言。
- HTML 指的是超文本标记语言 (Hyper Text Markup Language)
- HTML 不是一种编程语言,而是一种标记语言 (markup language)
- 标记语言是一套标记标签 (markup tag)
- HTML 使用标记标签来描述网页
二、XHTML 是什么?
- XHTML 指可扩展超文本标签语言(EXtensible HyperText Markup Language)。
- XHTML 的目标是取代 HTML。
- XHTML 与 HTML 4.01 几乎是相同的。
- XHTML 是更严格更纯净的 HTML 版本。
- XHTML 是作为一种 XML 应用被重新定义的 HTML。
- XHTML 是一个 W3C 标准。
三、什么是 XML?
- XML 指可扩展标记语言(EXtensible Markup Language)
- XML 是一种标记语言,很类似 HTML
- XML 的设计宗旨是传输数据,而非显示数据
- XML 标签没有被预定义。您需要自行定义标签。
- XML 被设计为具有自我描述性。
- XML 是 W3C 的推荐标准
四、三者之间的基情
4.1 XHTML相比于HTML
1、所有的标记都必须要有一个相应的结束标记
以前在HTML中,你可以打开许多标签,例如和<li>而不一定写对应的和</li>来关闭它们。但在XHTML中这是不合法的。XHTML要求有严谨的结构,所有标签必须关闭。如果是单独不成对的标签,在标签最后加一个"/"来关闭它。例如:
<img height="80" alt="网页设计师" src="../images/logo_w3cn_200x80.gif" width="200" />
2、所有标签的元素和属性的名字都必须使用小写
与HTML不一样,XHTML对大小写是敏感的,<title>和<TITLE>是不同的标签。XHTML要求所有的标签和属性的名字都必须使用小写。例如:<BODY>必须写成<body> 。大小写夹杂也是不被认可的,通常dreamweaver自动生成的属性名字"onMouseOver"也 必须修改成"onmouseover"。
3、所有的XML标记都必须合理嵌套
同样因为XHTML要求有严谨的结构,因此所有的嵌套都必须按顺序,
以前我们这样写的代码:<p><b></p></b>
必须修改为:<p><b></b></p>
就是说,一层一层的嵌套必须是严格对称。
4、所有的属性必须用引号""括起来,在HTML中,你可以不需要给属性值加引号,但是在XHTML中,它们必须被加引号。例如:
<height=80>
必须修改为:
<height="80">
特殊情况,你需要在属性值里使用双引号,你可以用",单引号可以使用',例如:
<alt="say'hello'">
5、把所有<和&特殊符号用编码表示。
- 任何小于号(<),不是标签的一部分,都必须被编码为<
- 任何大于号(>),不是标签的一部分,都必须被编码为>
- 任何与号(&),不是实体的一部分的,都必须被编码为&
- 注:以上字符之间无空格。
6、给所有属性赋一个值,XHTML规定所有属性都必须有一个值,没有值的就重复本身。例如:
<input type="checkbox" name="shirt" value="medium" checked>
必须修改为:
<input type="checkbox" name="shirt" value="medium" checked="checked">
7、不要在注释内容中使“--”,“--”只能发生在XHTML注释的开头和结束,也就是说,在内容中它们不再有效。
例如下面的代码是无效的:
<!--这里是注释-----------这里是注释-->
用等号或者空格替换内部的虚线。
<!--这里是注释============这里是注释-->
以上这些规范有的看上去比较奇怪,但这一切都是为了使我们的代码有一个统一、唯一的标准,便于以后的数据再利用。
8.图片必须有说明文字,每个图片标签都必须有ALT说明文字。
<img src="ball.jpg" alt="large red ball" />
4.2 XML和HTML的差异
XML和HTML的不同可以归纳为3点:
① XML扩展性比HTML强,XML(Extensible Markup Languages)是扩展标记语言的英语缩写,他可以创建个性化的标记语言,可以称之为元语言。XML的标记语言可以自定义,这样可以提供更多的数据操作,而不像HTML一样,只能局限于按一定的格式在终端 显示出来。HTML的功能只有浏览器放入显示和打印,仅仅适合静态网页的要求。
② XML的语法比HTML严格 由于XML的扩展性强,它需要稳定的基础规则来支持扩展。它的严格规则为:
- 起始和结束的标签相匹配
- 嵌套标签不能相互嵌套
- 区分大小写,相对应XML的严格规则,HTML语言并没有规定标签的绝对位置,也不区分大小写,而这些全部由浏览器来完成识别和更正。
③ XML与HTML互补,XML可以获得应用之间的相应信息,提供终端的多项处理要求,也能被其他的解析器和工具所使用,在现阶段,XML可以转化成相应的HTML,来适应当前浏览器的需求。
五、总结一下
其实在HTML5出道的今天,之前你所有的编程习惯都是可以保留的,html5的向前兼容性非常好,不但支持html4.0,也支持xhtml1.0,所以可以放心大胆地去用html5。然后xml作为一种数据交换格式,它的不限平台等特性注定了它还会继续存在下去。