xhtmlConformance与xhtml脚本呈现

此配置节只有一个属性——mode,该特性为 ASP.NET 应用程序指定 XHTML 呈现模式。它包含三个值

要让此配置生效,需要把<pages>配置节中的controlRenderingCompatibilityVersion 特性设置为 3.5 或网站针对 ASP.NET 3.5 或早期版本。否则,ASP.NET 将呈现 HTML,如同将 xhtmlConformance 设置设为 Strict,而不考虑实际 xhtmlConformance 设置。如果是设置成功后,默认 xhtmlConformance 模式是 Transitional。 但是,在某些情况下,您可能不希望 ASP.NET 呈现 XHTML 标记。 如果您的现有页面依赖于 XHTML 通常禁止的元素或特性时,一般会出现这种情况。 在这种情况下,您可以将 xhtmlConformance 模式设置为 Legacy。

Legacy 模式不会将所有 HTML 呈现更改为它在 ASP.NET 1.1 中呈现方式。 其行为由仅呈现可能破坏现有应用程序的更改还原为旧行为。 没有还原所做的所有更改以符合 XHTML 规范的机制。

Legacy 呈现方式

在将呈现方式设置为 Legacy 时,ASP.NET 页和控件会将其呈现方式更改为早期版本的 ASP.NET 中的行为。这些更改包括以下内容:

  • 呈现的 form 元素具有 name 属性。
  • ASP.NET 不会自动将 form 元素内的 div 元素呈现为控件容器。
  • 验证程序控件将被呈现为具有自定义属性(如 controltovalidate)的 span 元素。
  • 除非显式包括,否则 img 元素将不会呈现 alt 和 src 属性。
  • 如果需要支持自动回发行为,控件将呈现 language 属性(例如,language="javascript")。
  • 对于呈现 div 元素的控件(如 Panel 控件)来说,如果控件的 Wrap 属性被设置为 false,则会包括控件的 nowrap 属性。
  • ImageButton 控件呈现 border 属性。
  • 页面中呈现的任何 br 元素都会以 <br> 形式呈现。但是,如果显式包括 <br /> 标记,页面便会按原样呈现。
  • 如果设置了 BackColor 属性,则 DataGrid 和 Calendar 控件便会在呈现的 table 元素中包括 bordercolor 属性。

   

XHTML

xhtml是扩展的html,由于html的语法太不严谨,不利于机器去解析,故当时推出了xhtml,但是实际上并没有流行起来,大致了解它是规范了html中的一些语法细节,如

标签必须要结束

属性名称一定要小写,属性值需要用双引号引着

……..

   

   

参考文章

ASP.NET 和 XHTML

   

来自 <https://msdn.microsoft.com/zh-cn/library/exc57y7e(v=vs.100).aspx>

   

   

posted @ 2016-12-13 08:00  猴健居士  阅读(599)  评论(0编辑  收藏  举报