# XHTML 简介 **XHTML 是以 XML 格式编写的 HTML。** ## 什么是 XHTML? * XHTML 指的是可扩展超文本标记语言 * XHTML 与 HTML 4.01 几乎是相同的 * XHTML 是更严格更纯净的 HTML 版本 * XHTML 是以 XML 应用的方式定义的 HTML * XHTML 是 [2001 年 1 月](/w3c/w3c_xhtml.asp "W3C XHTML 活动")发布的 W3C 推荐标准 * XHTML 得到所有主流浏览器的支持 ## 为什么使用 XHTML? 因特网上的很多页面包含了“糟糕”的 HTML。 如果在浏览器中查看,下面的 HTML 代码运行起来非常正常(即使它并未遵守 HTML 规则): ``` <html> <head> <title>This is bad HTML</title> <body> <h1>Bad HTML <p>This is a paragraph </body> ``` XML 是一种必须正确标记且格式良好的标记语言。 如果希望学习 XML,请阅读我们的 [XML 教程](/xml/index.asp)。 今日的科技界存在一些不同的浏览器技术。其中一些在计算机上运行,而另一些可能在移动电话或其他小型设备上运行。小型设备往往缺乏解释“糟糕”的标记语言的资源和能力。 所以 - 通过结合 XML 和 HTML 的长处,开发出了 XHTML。XHTML 是作为 XML 被重新设计的 HTML。 与 HTML 相比最重要的区别: ### 文档结构 * XHTML DOCTYPE 是_强制性的_ * &lt;html&gt; 中的 XML namespace 属性是_强制性的_ * &lt;html&gt;、&lt;head&gt;、&lt;title&gt; 以及 &lt;body&gt; 也是_强制性的_ ### 元素语法 * XHTML 元素必须_正确嵌套_ * XHTML 元素必须始终_关闭_ * XHTML 元素必须_小写_ * XHTML 文档必须有_一个根元素_ ### 属性语法 * XHTML 属性必须使用_小写_ * XHTML 属性值必须用_引号包围_ * XHTML 属性最小化也是_禁止的_ ## &lt;!DOCTYPE ....&gt; 是强制性的 XHTML 文档必须进行 XHTML 文档类型声明(XHTML DOCTYPE declaration)。 您可以在 W3School 的标签参考手册中找到完整的 [XHTML 文档类型](/tags/tag_doctype.asp "HTML &lt;!DOCTYPE&gt; 标签")。 &lt;html&gt;、&lt;head&gt;、&lt;title&gt; 以及 &lt;body&gt; 元素也必须存在,并且必须使用 &lt;html&gt; 中的 xmlns 属性为文档规定 xml 命名空间。 下面的例子展示了带有最少的必需标签的 XHTML 文档: ``` <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Title of document</title> </head> <body> ...... </body> </html> ``` ## 如何从 HTML 转换到 XHTML 1. 向每张页面的第一行添加 XHTML &lt;!DOCTYPE&gt; 2. 向每张页面的 html 元素添加 xmlns 属性 3. 把所有元素名改为小写 4. 关闭所有空元素 5. 把所有属性名改为小写 6. 为所有属性值加引号 ## 用 W3C 验证器检验 XHTML 在下面的文本框中输入您的网址: <form method="get" action="http://validator.w3.org/check" target="_blank"> &lt;input name="uri" size="60" style="margin:10px 0 0 0;" value="http://www.w3school.com.cn/html/index.asp"&gt; &lt;input type="submit" value="验证文件"&gt; </form> ## XHTML 测验 该测验包含 20 道问题,且没有时间限制。 本测验是非正式的,它仅仅是了解您 XHTML 知识掌握程度的一个不错的途径。 每项正确答案可获得 1 分。在测试结束后,会显示您的总分。最高分为 20 分。 [开始 XHTML 测验](/xhtml/xhtml_quiz.asp "XHTML 测验")