确定了是否使用 XML 声明,并且添加了定义要遵循的标记规则的 DOCTYPE 声明之后,需要将 HTML 根添加到文档,并相应设置 XHTML 名称空间:
此时,要添加一些必需的结构元素,如 head、title 和 body。清单 1 显示包括 XML 声明的 XHTML 1.0 transitional文档外壳。在清单 2 中,将看到不带 XML 声明的 transitional 文档,但是,有一个 meta 标记来声明所用字符集。
清单 1:带有 XML 声明的 Transitional DTD 格式的 XHTML 1.0 文档
Transitional Document with XML Declaration
在清单 2 中,将看到不带 XML 声明的 transitional 文档,但是,有一个 meta 标记来声明所用字符集。
清单 2:不带 XML 声明的 Transitional DTD 格式的 XHTML 1.0 文档
Transitional Document without XML Declaration
语法事项
一旦 XHTML 文档包含必需的声明和结构信息,就可以检查由 XML 在 Web 标记上的影响而导致的语法更改。这些语法更改包括是否区分大小写、正确格式的标记元素、空和非空元素,以及引号的使用。
大小写
如您所知,HTML 不区分大小写。这意味着,HTML 元素和属性名称可以是大写、小写或大小写混合的。因此,可以写成:
或
[B]
甚至
[B]
所有这些示例的功能相同。另一方面,XML 却是区分大小写的。因此,XHTML 要求有特定的大小写。在 XHTML 1.0 中,所有元素和属性名称必须是小写的:
除元素和属性名称之外,其它不必遵循 XHTML 1.0。请注意,属性值(例如 "my.gif")可以是大小写混合的。如果文件所在服务器的文件系统是区分大小写的,或者在应用中使用大小写混合的代码(例如那些用 Microsoft 的活动服务器页面 (ASP)、ASP+ 或 ColdFusion 编写的代码),则尤其如此。
良好的格式
虽然很多 HTML 浏览器很宽容,但是,很多 HTML 工具不符合标准。就这样,某些作者养成了坏习惯,如不正确的标记嵌套。下例在很多浏览器中可以使用: Welcome to MySite.Com
在宽容的浏览器中,它将显示粗体和斜体。但是,如果拿起笔来,从粗体的开始标记到其结束标记画一个弧,然后,再从斜体的开始标记到其结束标记画一个弧,将看到,两条弧线相交。这展示了不正确的标记嵌套,我们认为,这是坏格式。
在 XHTML 1.0 中,不接受这样的坏格式标记。必须在“每个元素必须正确嵌套”方面符合良好格式的概念。前面示例用XHTML 1.0 表示为: Welcome to MySite.Com
现在,再画弧,将看到,弧线不再相交。这些标记以正确顺序放置,并被认为是正确的格式。
非空和空元素
非空元素包含一个元素和一些内容:
This is the content within a non-empty element.
相反,空元素没有内容,只有元素及其属性,如 和 。
XML 规则指出,空元素和非空元素必须完全关闭。在 HTML 中,可以看到非空元素通常有一些可选的结束标记。上段可以这样写:
This is the content within a non-empty element.
在 HTML 中,认为这是正确的。XHTML 1.0 要求,非空元素要完全关闭。另一个例子是
(列表项)元素。在 HTML中,可以写成:
The first item in my list.
The second item in my list.
或
The first item in my list.
The second item in my list.
在 XHTML 1.0 中,只允许后一种方法。
在 XML 中,用斜杠终止空元素。因此,变成
。由于某些习惯于解释 HTML 的浏览器在使用该方法时有问题,所以,引入了替代方法,即在斜杠之前添加一个空格:
。
这是一个图像元素的 XHTML 示例,它是空元素:
其它要注意的空元素是 meta 和 link。
引号
HTML 中的引号是任意的,即,可以在属性值前后使用引号,也可以不使用,并且不会导致太多麻烦。没有规则说:不用引号将值括起为非法。下例在 HTML 中完全可接受:
[table]
尽管有些属性值用引号括起,有些没有,但浏览器将正确显示该标记。但是,如果要遵循 XHTML 1.0,则必须将所有属性值用引号括起。
[table]
如您可见,这些更改都不大。还有点儿烦,是的,但是,一旦开始使用这种方法,将会发现,这种标记要方便得多。一致
性是使 XHTML 1.0 如此吸引人的原因之一 -- 它提供了构建未来结构的坚实基础。
XHTML 的未来
既然 XHTML 如此易用,为什么这么长时间才被采用呢?这是很多关心标准的人在问的问题。该问题的部分原因可能是宣传得不够 -- 没有太多人了解 XHTML 1.0。甚至即使听说过,也可能没意识到:现在使用它有多简单。
另一个原因是:目前用于 HTML 开发的软件工具(如 Adobe GoLive、Macromedia Dreamweaver、Microsoft FrontPage 等)不支持 XTHML,很多喜爱这些工具或必须在工作中使用这些工具的 Web 作者对此感到担心。
但是,尽管有这些困难,XHTML 1.0 正在前进。事实上,下一版本,XHTML 1.1,已经相当完善,并包含 Web 标记作者某些新的、不同的概念。模块化(将语言分成彼此独立的模块)是 XHTML 1.1 的主要部分。而且,更多类似于 XML 的优势在发挥作用。例如,为 XHTML 文档编写自己的 DTD 或者使用模式 (schema) 的能力将带来真正的可扩展性。
XHTML 1.0 是当今的 Web 标记标准。如果还没使用它,至少应该好好尝试一下。在与 XML 相关的技术领域发生的进展(特别是无线领域)强有力而令人信服地表明:标记语言的作者越灵活,其前景就越被看好。XHTML 1.0 是开阔您眼界的极佳方法。够熟悉,就有意义;够强大,可以帮助您创建适用于今天、更为明天激动人心的机遇作好准备的稳定、可互操作的 Web 站点。
参考资料
World Wide Web Consortium XHTML Recommendation。这是 W3C 站点上详细解释 XHTML 1.0 的标准文档
XHTML 1.1。正在讨论中,XHTML 的这个下一版本涉及到 XHTML 1.0 的模块化方面。
可以在这里找到 Chuck Musciano 所著的 Web Review series on XHTML 1.0。
Mozquito.Com 是 Mozquito Technologies 的 Web 站点,他专为 XHTML 制作软件产品。还可以在他们的站点找到很好的
教程和大量资源链接。
关于作者
作为作家、讲师和设计人员,Molly E. Holzschlag 将其观点和热情带入书籍、杂志和 Web 站点。被 Webgrrls 评为
Web 上最有影响的 25 位女性之一,Molly 在联机世界已工作 10 年之久。她写了 15 本关于 HTML 和 Web 设计与开发主
题方面的书籍,包括即将出版的 Que 的 Special Edition Using XHTML 1.0、最畅销的 Special Edition Using HTML
4.0 和得到国际上普遍赞誉的 Web by Design。她的流行栏目,Integrated Design,每月出现在 WebTechniques 杂志。
她还是 Web Review 的执行编辑,也是 Adobe Magazine、Builder.Com、DesignShops.com、Digital Chicago、Digital New York、IBM developerWorks、MacWorld、MSDN、PlanetIT 的作家,还是其它开发人员资源的成员之一。可以造访她的 Web 站点 http://www.molly.com/。