网页制造aiyiweb文章简介:
Web 标准使您能通过最少的任务,生成可被最广大受众访问的 Web 站点。Web 标准的承诺是:只需设计页面一次,即可让该页以完全相反的方式在任何现代的浏览器中显示和任务。例如,在按照标准生成当前,旨在在 Microsoft Internet Explorer 中以某种方式显示的页可在其他浏
Web 标准使您能通过最少的任务,生成可被最广大受众访问的 Web 站点。Web 标准的承诺是:只需设计页面一次,即可让该页以完全相反的方式在任何现代的浏览器中显示和任务。例如,在按照标准生成当前,旨在在 Microsoft Internet Explorer 中以某种方式显示的页可在其他浏览器(如,Mozilla Firefox、Netscape Navigator、Opera、Camino 和 Safari)中以相反的方式显示,而无需完成任何额外的任务。
Web 标准的一个额外好处是 — 使 Web 站点更易于为残疾人士访问。这是一个范围广泛的受众群体,包括视力衰退的中年人士,刚刚在滑雪时跌断胳膊的人士,以及完全失明的人士等。使用标准可避免无意中阻止那些具有暂时性或永世性身体残疾的人士访问 Web 页。
HTML 在正式的场合曾经过时了。World Wide Web Consortium (W3C) 于 2000 年 6 月 26 日发布了 XHTML 的第一个版本作为推荐标准。XHTML 标准的目标是取代 HTML。按照 W3C 的说法,“XHTML 是 HTML 的承继者”(http://www.w3.org/MarkUp/)。
XHTML 标准的制定者具有两大目标:
在文档结构和表示方式之间创建更明显的分离。
将 HTML 重新表示为 XML 的使用程序。
为了实现第一个目标,W3C 不断在坚定地从 HTML 中删除纯粹描述性的元素和属性(他们是从 HTML 4.0 开始这一过程的)。例如,XHTML 1.0 Strict 不包含诸如 <font> 标记之类的元素或诸如 bgcolor 属性之类的属性,由于这些元素和属性完全用于描述文档的外观,它们与文档的结构没有任何关系。
W3C 不断在努力使 Web 站点设计人员和开发人员摒弃特定标记该当具有特定外观这一观念。例如,您可能会认为 <h1> 标记(标题标记)的用途是在页中呈现大的加粗文本。这实际上是错的。<h1> 标记用来在文档中标记标题而不是其他任何东西。如何呈现标题标记由浏览器确定。视力衰退的人士使用的屏幕阅读器可能利用抑扬顿挫的声音来大声朗读标题标记的内容。不支持多个字体大小的 PDA 可能用闪烁文本呈现标题标记的内容。
您不该当试图使用诸如 <h1> 标记之类的页元从来控制 Web 页的外观。相反,您该当通过使用层叠款式表来指示 Web 页的外观。而且,您所使用的层叠款式表该当是外部 层叠款式表。请使用标记和属性来标记文档的结构,而使用款式表来控制文档的表示方式。
XHTML 的第二个目标是迫使 HTML 开发人员恪守更为严厉的 XML 规则。按照 W3C 的说法,“XHTML 1.0 是 HTML 4.01 的作为 XML 1.0 使用程序的修订”(http://www.w3.org/MarkUp/)。换句话说,使用 XHTML 生成 Web 页时,实际上是在创建 XML 文档。
XML 文档具有比 HTML 文档更严厉的语法。例如,XML 区分大小写,所有 XML 属性都必须放在引号内,而且 XML 标记不能堆叠。强迫 Web 站点开发人员和设计人员恪守有更高要求的言语规则有很多好处。
好处之一,用 XHTML 标记编写的页具有更高的跨浏览器、跨设备和跨操作系统兼容性。如果在浏览器中打开传统的 HTML 页,浏览器将千方百计地呈现该页。浏览器将试图呈现该页,即便您的 HTML 一团糟。例如,Internet Explorer(以及 Firefox 和 Opera)能够很好地显示下面的 HTML 页。
<i><B>this is bold and italic</I> and this is bold </body></HTML>Internet Explorer 会恰当地显示该页 — 即便该页缺少 <html> 和 <body> 开始标记,<b> 标记不具有婚配的结束标记,并且开始和结束 <i> 标记的大小写不分歧。所有次要的浏览器都能顺应几乎任何 HTML 标记“混合物”,并且不顾一切地呈现一些内容。
浏览器的这种顺应行为是危险的,由于不同的浏览器(或相反浏览器的将来版本,或在不同操作系统上运转的相反浏览器)可能以不同方式呈现错乱的 HTML。实际上,对于最新版本的 Internet Explorer、Mozilla Firefox 和 Opera 而言,它们呈现无效 HTML 的方式惊人地分歧。但是,一旦开始违反游戏规则,就不会得到任何保证。
然而,如果用 XHTML 的更严厉的规则编写 Web 页,那么 Web 页就更有可能以分歧的方式与当前浏览器协作,并且它们将继续与当前浏览器的未来新版本协作。对于任何公司而言,几乎都不具备针对每个浏览器、在每个操作系统和每个设备上测试其 Web 站点的资源。如果按照 Web 标准编写页面,那么就不必具有这样的资源。
XHTML 标准的版本
有三个版本的 XHTML 1.0,它们分别对应三个版本的 HTML 4.01:
XHTML 1.0 Transitional
XHTML 1.0 Strict
XHTML 1.0 Frameset
XHTML 1.0 Transitional 包含 HTML 4.01 Transitional 中的全部标记和属性。引入 XHTML 1.0 Transitional 标准的目的是,使现有 HTML 设计人员和开发人员无需经历太多的痛苦就能迁移到 XHTML。
XHTML 1.0 Strict 与 XHTML 1.0 Transitional 的不同之处在于,它在文档结构和表示方式之间实施了一种更为明显的分离。与 XHTML 1.0 Transitional 不同,XHTML 1.0 Strict 强迫您使用层叠款式表来控制页的外观。
XHTML 1.0 Frameset 文档意在成为使用 <frameset> 标记将浏览器划分为多个框架的文档(XHTML 1.0 Transitional 和 Strict 页不能包含 <frameset> 标记)。
W3C 还发布了 XHTML 1.1 以作为推荐标准(2001 年 5 月 31 日)。XHTML 1.1 非常类似于 XHTML 1.0 Strict。二者的次要区别在于,可以用附加模块扩展 XHTML 1.1 以便支持新元素。例如,可以生成特定的 XHTML 1.1 页,该页还包含 MathML(数学标记言语)、SVG(可伸缩向量言语)或创建的自定义模块中的元素。
最后,W3C 正在制定 XHTML 2.0 推荐标准。由于 XHTML 2.0 仍然处于起草阶段,并且当前没有 Web 浏览器支持该标准,所以我们不在本文讨论它。
创建 XHTML 页
与 HTML 页不同,XHTML 页必须是标准格式且无效的 XML 文档。XHTML 1.0 推荐标准的第 4 部分对 HTML 和 XHTML 之间的区别进行了总结。这里给出生成无效 XHTML 页的最重要需求的列表:
页必须包含无效的 XHTML DOCTYPE。
无效的 XHTML 页必须在其任何内容之前包含一个 XHTML DOCTYPE。当在 Visual Studio .NET 2005 或 Microsoft Visual Web Developer 中创建新的 ASP.NET 页时,该页中将自动包含 XHTML 1.0 Transitional 的正确的 DOCTYPE。下面列出四个标准的 XHTML DOCTYPE:
XHTML 1.0 Transitional
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">XHTML 1.0 Strict
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 S