Visual Web Developer 中的 XHTML

更新:2007 年 11 月

XHTML 是一种万维网联合会 (W3C) 标准,它将 HTML 定义为 XML 文档。如果要生成使用可兼容 XHTML 的标记来呈现的网页,Visual Web Developer 可以帮助您以多种方式创建符合此要求的页面。

有关 XHTML 和 XHTML 标准的更多信息,请参见位于 W3C 网站 的 HTML/XHTML 主题页面。

在 Visual Web Developer 中创建符合 XHTML 的页面

默认情况下,Visual Web Developer 中的网页设计程序始终生成符合 XHTML 1.0 Transitional 规范的标记。创建新的 ASP.NET 网页时,新页面包含 XHTML 所需的基本元素,包括 DOCTYPE 声明(如下面的示例所示)。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

此文档也包含 html 元素,此元素包括对 XHTML 命名空间的引用,如下面的示例所示。

<html xmlns="http://www.w3.org/1999/xhtml" >

生成标记

使用网页设计程序在页面中创建标记时,由网页设计程序生成的 HTML 元素和属性与 XHTML 兼容。例如,标记和属性名称是使用小写字母创建的,且所有属性值都用引号引起来。正确关闭元素,网页设计程序识别并实现所需属性以及 XHTML 标准中不允许的属性的规则。

执行以下操作时,网页设计程序将生成标记:

  • 将控件从工具箱拖动到页面上。

  • 在“设计”视图中设置字符或段落格式设置选项。使用样式设置格式设置选项。使用在运行时呈现样式的属性设置 ASP.NET 服务器控件的格式设置选项。

  • 使用**“属性”**窗口设置控件或元素属性。

  • 使用对话框设置属性,如在**“插入表”**对话框中插入表。

验证 XHTML 遵从性

在“源”视图中,网页设计程序验证页面中的标记是否符合指定浏览器或标准的架构。为了符合 XHTML,可以使用 XHTML 1.0 Transitional、XHTML 1.0 Frameset 或 XHTML 1.1 架构。有关详细信息,请参见 Visual Web Developer 中的标记验证

dac1ff35.alert_note(zh-cn,VS.90).gif说明:

进行验证会将包含 runat="server" 属性的 form 元素标记为缺少所需的 action 属性。这是预期的行为。action 属性是在运行时自动生成的,将当前页的名称作为属性的值填充。

运行时输出 XHTML

在浏览器中请求 ASP.NET 页时,ASP.NET 处理此页面,使页面及其控件呈现标记、样式和脚本。页面及其控件将呈现 XHTML 1.0 Transitional 标记,除非请求该页面的浏览器使用的是非 XHTML 协议,或已经将网站配置为呈现 XHTML 1.1 或旧式标记。

在处理页面过程中,ASP.NET 还执行使页面符合 XHTML 标准所需的其他处理任务,其中包括以下任务:

  • 将 action 属性添加到 form 元素。

  • 呈现 HTTP 标头,此标头包括有关当前字符集、编码等的信息。

在处理页面过程中,ASP.NET 不执行以下任务:

  • 它不会添加 DOCTYPE 声明(如果丢失),除非此页面是要为支持 XHTML Mobile Profile (XHTML MP) 协议的浏览器呈现的。

  • 它不会对您的标记进行任何更改。静态标记中所有错误将原封不动地传递到浏览器。

  • 它不会将命名空间属性添加到 html 元素,除非浏览器使用 XHTML MP 协议。

有关更多信息,请参见 ASP.NET 和 XHTML

处理现有页面

可以在 Visual Web Developer 中打开和编辑任何网页。如果页面尚未包含兼容 XHTML 的标记,验证过程会将页面中所有不符合 XHTML 标准的元素打上标志。Visual Studio 不会添加任何丢失的元素,而只会对元素进行少量更正,如向应该自行关闭的元素添加结束斜杠 (/)。例如,**“设置选定内容的格式”“设置文档的格式”**菜单命令可以解决大小写和引号的问题,但它们不会更改文档的结构。

如果要使页面符合 XHTML 标准,应执行以下所有操作:

请参见

概念

ASP.NET 和 XHTML

Visual Web Developer 中的标记验证