1. XHTML —— Extensible Hyper Text Markup Language (可扩展超文本标记语言),是HTML升级为XML的过渡产品,XHTML将XML语法和所有HTML4.01的元素结合起来(XML是一种标记语言,用来描述数据,而HTML用来显示数据)
2. XHTML与HTML的主要区别:
① XHTML文档形式必须符合规范
② 标签必须使用小写
③ 标签必须合理嵌套
如<b><i>This text is bold</b></i>
该形式在HTML中可以使用,但在XHTML必须合理嵌套:
<b><i>This text is bold</i></b>
④ 所有XHTML标签必须合理关闭
空标签在XHTML中也需要合理关闭,常见空标签有<br>、<col>、<frame>、<hr>、<img>、<input>、<isindex>、<link>、<meta>、<param>等
3. XHTML语法规则
① 属性名必须小写
② 属性值必须用双引号
③ 不允许简写属性
HTML文档中的简写元素:
<input disabled>
<option selected>
在XHTML中是错误的书写方式,正确方式为:
<input disabled=”disabled”/>
<option selected=”selected”/>
HTML中可简写的属性与XHTML中的写法对照
HTML中可简写的属性 | XHTML中的写法 |
compact | compact=“compact” |
checked | checked=“checked” |
declare | declare=“declare” |
readonly | readonly=“readonly” |
disabled | disabled=“disabled” |
selected | selected=“selected” |
defer | defer=“defer” |
ismap | ismap=“ismap” |
nohref | nohref=“nohref” |
noshade | noshade =“noshade” |
nowrap | nowrap =“nowrap” |
multiple | multiple =“multiple” |
noresize | noresize =“noresize” |
④ 用id属性替换name属性
对于<a>、<frame>、<iframe>、<img>和<map>标签,HTML4.01定义了name 属性,在XHTML中用id代替(针对版本较低的浏览器,应该同时使用id和name 属性,并使两值相同)
⑤ 使用XHTML DTD定义必要的标签
所有XHTML文档都包括XML声明、DOCTYPE(文档类型)声明、XHTML命名空间 以及文档内含有html、head、body标签,而且title元素必须出现在head标签内
a) XML声明将文档声明为XML文档,同时标记该文档遵循的XML版本,目前1.0
一般格式为:<?xml version="1.0" encoding="UTF-8" ?>
其中encoding为编码信息
b) XHTML标准制定了3种文档类型:严密型、过渡型(最普遍)、框架型
l XHTML1.0严密型(Strict)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
l XHTML1.0过度型(Transitional)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
l XHTML1.0框架型(Frameset)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
c) 把XHTML文档标记为参考的XHTML命名空间时,需要引用html标签的XHTML命名空间声明,具体形式如下:
<html xmlns="http://www.w3.org/1999/xhtml">
XHTML文档要求xmlns属性必须出现在<html>标签后总,然而w3.org的校验器不会由于这个属性没有出现在XHTML文档中而报告错误,因为该属性是一个默认值,会自动加上