(本文参考自W3C)

什么是XHTML?

XHTML指可扩展超文本标签语言(EXtensible HyperText Markup Language)。

XHTML是更严谨更纯净的HTML版本。使我们有能力编写出拥有良好结构的文档,这些文档可以很好地工作于所有的浏览器,并且可以向后兼容。

元素语法

1、XHTML元素必须被正确地嵌套。

标签顺序必须正确,例如:

1
<b><i>This text is bold and italic</i></b>

2、XHTML元素必须被关闭。

非空标签必须使用结束标签。

空标签也必须使用结束标签,或者其开始标签必须使用/>结尾。

3、标签名必须用小写字母。

XHTML规范定义:标签名和属性对大小写敏感。

4、XHTML文档必须拥有根元素。

所有的XHTML元素必须被嵌套于<html>根元素中。

更多的语法规则

1、属性名称必须小写。

2、属性值必须加引号。

3、属性不能简写。

4、用Id属性代替name属性。

5、XHTML DTD定义了强制使用的HTML元素。

强制使用的XHTML元素

1、XHTML DOCTYPE

定义文件类型声明,存在三种XHTML文档类型:

STRICT(严格类型)

严格DTD包含没有被反对使用的或不出现在框架结构中的元素和属性:

1
2
3
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

TRANSITIONAL(过渡类型)

过渡DTD包含严格DTD中的一切,外加那些不赞成使用的元素和属性。

1
2
3
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

FRAMESET(框架类型)

框架 DTD 包含过渡 DTD 中的一切,外加框架。

1
2
3
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
2、<html>中的 XMLnamespace属性(xmlns属性)

xmlns 属性可以在文档中定义一个或多个可供选择的命名空间。

3、<html>、<head>、<title>以及<body>

注意

如果你希望将页面验证为正确的XHTML,那么页面中必须含有文件类型声明。

使用下面的链接根据官方的W3C DTD对所有修改过的页面进行验证:

XHTML Validator