XHTML(可扩展超文本标记语言)——是一种置标语言,表现方式与超文本标记语言(HTML)类似,不过语法上更加严格。
XHTML 1.0 [W3C 推荐标准]基本上是对 HTML 4 的改写,使其成为结构良好的 XML。HTML 是一种 SGML 应用,当 XML 作为对 SGML 在 Web 应用上的简化和规范化开发出来的时候,HTML(本身是 Web 上的通用语言)就成为采用 XML 的首选目标。于是出现了 HTML 的一种变体,称为 XHTML。XHTML 研究的目标是一种更容易解析(因为 XML 的语法更加严格)的 HTML 语言。XHTML 很容易用现成的 XML 工具处理,力求更好地分离内容与表示。XHTML 是最古老的 XML 应用之一,有许多利益集团在不同的部分和版本中起过作用。我将尽力对其中的大部分加以概括。
与三种HTML 4 DTD——Strict、Transitional 和 Frameset 对应,XHTML 1.0 定义了不同的 DTD 和名称空间。Modularization of XHTML [W3C 推荐标准]提供了一个框架,把 XHTML 分解成单独的模块,作为不同的 DTD 定义。比如,用于定义列表的所有元素和属性组成一个模块,而和表示有关的元素类型则放在另一个模块中。这样,就可以通过增加、减少和修改通用的独立模块开发和重新定义 XHTML。沿着这条路线,第一步就是 XHTML Basic [W3C 推荐标准],它定义了任何作为 XHTML 的语言都必须具有的最小 XHTML 模块集。XHTML Basic 本身可以作为 Web 客户的内容语言,如移动电话、PDA、寻呼机和置顶盒。XHTML 1.1 [W3C 推荐标准]基本上就是使用模块框架分解的 XHTML 1.0 Strict DTD。
XHTML 2.0 [开发中]是对 XHTML 的重写,没有考虑与 HTML 的向后兼容。这种想法差不多就是为 Web 编写一种全新的内容语言,学习过去的经验而又不束缚于过去。其中大的变化有:
<br/>
、 <img/>
以及其他认为过于面向表示的元素更重要的是,XHTML 2.0 做了许多扩展,增强了作者表达内容结构和含义的能力。打破向后兼容性引起了争议。一些评论者认为保持 (X)HTML 的名称只修改版本号会造成混乱。其他人则说这些修改非常必要,而 XHTML 实际上仍然是一种可扩展超本文标记语言,因此保留原来的名称非常合适。
XHTML 常常和其他嵌入格式一起使用,如 MathML、RDF、SVG、SMIL 和 VoiceXML(后面都将予以介绍)。这种混合文档称为多模的或者非单体的。W3C、ISO 以及其他组织正投入巨大的努力鼓励对这种文档的强力支持。
在继续学习XHTML教程之前,你应该对以下知识有一个基本的理解:
HTML
如果希望首先学习 HTML,推荐阅读我们的 HTML 教程 。
XHTML 于2000年的1月26日成为 W3C 标准。
W3C 将 XHTML 定义为最新的HTML版本。XHTML 将逐渐取代 HTML。
通过使用我们的 W3C 教程 ,你将与最新的 web 标准保持同步。
XHTML 与 HTML 4.01 兼容。
所有新的浏览器都支持 XHTML。
XHTML 是以 XML 重构的 HTML 4.01。通过遵循一些简单的指导方针,XHTML 就可以立即在现有的浏览器中投入使用。
一个符合XHTML标准的文件即可称为有效. 此可以确保XHTML文件代码的协调, 亦能令文件的更容易被处理, 而不需确保各种浏览器编译的一致性。而W3C验证服务则可以验证文件是否有效。而实际上, 很多网站开发工具(例如Dreamweaver)都支援以W3C标准验证文件。
XHTML语言必须符合XML的格式,例如
属性名称必须为小写
错误的:<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" />
用id属性来替代name属性
这是错误的:<img src="picture.gif" name="picture1" />
这是正确的:<img src="picture.gif" id="picture1" />
注意:为了版本比较低的浏览器,你应该同时使用name和id属性,并使它们两个的值相同的,像这样:
<img src="picture.gif" id="picture1" name="picture1" />
这是在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"
这些做法的目的,是使一个XHTML网页能够被网页浏览器正确及较快地编译。
在接下来的教程里,您将学习到XHTML的:
XHTML 的语法
如何将站点转换为 XHTML
XHTML 验证
XHTML 模块化