10.1 XHTML简介
HTML语言中只有有限的创建元素,因此无法处理非常规的内容,同时HTML不能很好地支持不断更新的显示媒体,如手机等。而XHTML是XML的一种应用,因此所有XML的处理器都可以处理XHTML文档,使语言具有了可扩展性。
XHTML提倡使用更加简洁和规范的代码,使得代码的阅读和处理更方便,同时也便于搜索引擎的检索。
XHTML文档在旧的基于HTML的浏览器中能够表现在和新的基于XHTML的浏览器中一样出色。
XHTML是可扩展的语言,能够包含其他文档类型,既能够利用HTML的文档对象模型,又能利用XML的文档对象模型。所以XHTML可以支持更多的显示设备。
在XHTML中,推荐使用CSS样式定义页面的外观,并分离了页面的结构和表现,方便利用数据和更换外观。
XML是Web发展的趋势,具有更好的向后兼容性。
10.2 XHTML页面结构
10.2.1 文档类型声明
文档类型声明由<!DOCTYPE>元素定义,在代码的前两行,这部分在浏览器中不会显示。
语法:
<!DOCTYPE html PUBLIC “-//W3c//DTD XHTML 1.0 Transitional//EN”
“http://www.w3.org/TR/xhtml//DTD//xhtml1-transitional.dtd”>
10.2.2 < html>元素和名字空间
< html>元素是XHTML文档中必须使用的元素,所有的文档内容(包括文档头部内容和文档主体内容)都要包含在元素之中。标签< html>表示HTML代码的开始,文件的最后标签应该是< /html>。
语法:<html xmlns=”http://www.w3.org/1999/xhtml”>
10.2.3 网页头部元素、页面标题元素、页面主体元素
语法:
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=gb123” />
<title>标题</title>
</head>
<body>
正文......
</body>
10.3 XHTML语法规范
XHTML元素必须是完全嵌套的,HTML则不严格。
所有的XHTML标记必须被嵌套使用在根标签之中。所有其他的标签可以有自己的子标签。位于父标签之内的子标签也必须成对且正确的嵌套使用。
标签名必须是小写的。
所有的XHTML元素都必须有始有终。
HTML4.01中为a、applet、frame、iframe、img和map定义了一个name属性,在XHTML中除了表单(form)外,name属性不能使用,需要用id来替换。
在XHTML中必须声明文档的类型,以便于浏览器知道当前浏览的文档是什么类型。声明DOCTYPE必须放在文档的第一行。当浏览器检测到DOCTYPE后就会转换到标准模式。
属性必须加上英文双引号。
XHTML中规定每一个属性都必须有一个值。没有值的属性也要用自己的名称作为值。例如,在HTML中,checked属性是可以不取值的,但是在XHTML中必须用它自身的名称作为值。