编写XHTML代码需要纯净的HTML语法。
更多的XHTML语法规则:
属性名称必须小写
属性值必须加引号
属性不能简写
用Id属性代替name属性
XHTML DTD定义了强制使用的HTML元素
属性名称必须小写
这是错误的:
<table WIDTH="100%">
这是正确的:
<table width="100%">
属性值必须加引号
这是错误的:
<table width=100%>
这是正确的:
<table width="100%">
属性不能简写
这是错误的:
| 以下为引用的内容: <input checked> <input readonly> <input disabled> <option selected> <frame noresize> |
这是正确的:
| 以下为引用的内容: <input checked="checked" /> <input readonly="readonly" /> <input disabled="disabled" /> <option selected="selected" /> <frame noresize="noresize" /> |
下面是一个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属性
HTML 4.01针对下列元素定义name属性:a, applet, frame, iframe, img, 和map。
在XHTML中不鼓励使用name属性,应该使用id取而代之。
这是错误的:
<img src="picture.gif" name="picture1" />
这是正确的:
<img src="picture.gif" id="picture1" />
重要的兼容性提示:
你应该在"/"符号前添加一个额外的空格,以使你的XHTML与当今的浏览器相兼容。
语言属性(Lang)
Lang属性应用于几乎所有的XHTML元素。它定义元素内部的内容的所用语言的类型。
如果在某元素中使用lang属性,就必须添加额外的xml:lang,像这样:
<div lang="no" xml:lang="no">Heia Norge!</div>
强制使用的XHTML元素
所有XHTML文档必须进行文件类型声明(DOCTYPE declaration)。在XHTML文档中必须存在html、head、body元素,而title元素必须位于在head元素中。
下面是一个最小化的XHTML文件模板:
| 以下为引用的内容: <!DOCTYPE Doctype goes here> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Title goes here</title> </head> <body> </body> </html> |
提示:文件类型声明并非XHTML文档自身的组成部分。它不是一个XHTML元素,也没有关闭标签。
提示:在XHTML中,<html>标签内的xmlns属性是必需的。然而,即使当XHTML文档中没有这个属性时,w3.org的验证工具也不会提示错误。这是因为,"xmlns=http://www.w3.org/1999/xhtml"是一个固定的值,即使你没有把它包含在代码中,这个值也会被添加到<html>标签中。
你会在下一章学习更多关于XHTML文档类型声明的知识。