XHTML 2 抢先试用

时间:2008-10-06 10:24:23  来源:第二电脑网上收集  作者:

  第二电脑网导读:能更好地充当单一资源发布系统的中心模式。执行大型或小型发布的人们现在就可以开始使用 XHTML 2 的新特性,而不必等待浏览器提供它的新用户接口特性的支持。大约在一年以前,一个行业标准小组要我介绍一下 XHTML2 可能对发布者有哪些用处。我不知道它是否具有实用性,但是他们愿意提供去纽约的费用,因此我决定去调查一下。我所做的调查并不需要花大力气。XHTML 2 在...
  正文:

XHTML 2 规范尚未完成,但是它相对 XHTML 1 已经具有了许多优势,其中包括更丰富的结构特性,这使得 XHTML 2 作为一种编辑格式将比其前任能更好地充当单一资源发布系统的中心模式。执行大型或小型发布的人们现在就可以开始使用 XHTML 2 的新特性,而不必等待浏览器提供它的新用户接口特性的支持。
大约在一年以前,一个行业标准小组要我介绍一下 XHTML2 可能对发布者有哪些用处。我不知道它是否具有实用性,但是他们愿意提供去纽约的费用,因此我决定去调查一下。

我所做的调查并不需要花大力气。XHTML 2 在 XHTML 的基础上添加更丰富的结构,使之成为一种可用于创建和存储内容的格式,而并不单单是能够把内容传递给浏览器。当我说 XHTML 2 已经有用时,我稍微夸张了一点;许多店铺针对这个尚未完成的标准都有一些非常明智的政策,而且 XHTML 2 还仍然处于工作草案(Working Draft)的阶段(有关更多信息,请参阅 参考资料)。与几乎所有的 HTML 相关标准都有所不同,XHTML 2 能够在知名的浏览器对它提供支持之前提供大量有价值的东西,原因在于,它更可能以更丰富和复杂的结构来存储内容,而不会过多地偏离为人所熟悉的 HTML 元素和属性。

XHTML 的现状:我们进展到哪了

W3C XHTML 1.0 标准(请参阅 参考资料)创建了一种 XML 版本的 HTML。当浏览器并不过分讲究 Web 页面是否为格式良好的 XML 时,Web 站点设计人员已经厌倦于针对 firefox 使用一套方法而针对 Microsoft™ Internet Explorer 又使用另一套方法,他们在标准中看到了更多的价值。许多开源 Css 集合(如 Open Web Design 和 Open Source Web Design,有关这两者的链接,请参阅 参考资料)的样式表使用 XHTML 1 示例文件用于演示目的,我曾听说一些几乎不知道格式良好 是什么的 Web 设计人员很骄傲地宣称他们的站点是 XHTML 构成的。随着 Internet Explorer 和 Firefox 支持的 CSS 特性越来越多,这些 Web 设计人员把更多设计技巧加入到 CSS 样式表中,把更简单更直接(以及更易于重复使用)的 XHTML 留在基本文档中。

XHTML 1.1(请参阅 参考资料)并没有加入新特性,但是却把 XHTML 分成了模块。其价值表现在两个方面。第一,如果我们发现某些模块存在价值,而其他模块没什么价值,则可以更方便地采用它的一个子集。比如说,无线应用论坛(Wireless Application Forum,WAP)完全有理由把基本的 XHTML 结构合并到其标准中,以便向移动电话传递内容,但是它并不想允许 WAP 文档合并一些用户接口特性,如在手机的小型屏幕中没多大用处的图像映射或者编辑模块功能。

对于 DTD 或者模式来说,模块化架构的另一个好处是可以更容易地插入用户应用程序所专有的新模块。与挑选现有模块的功能相结合,这种功能为发布行业带来了益处:致力于发布行业元数据的 PRISM 标准小组选择了 XHTML 1.1 的一个子集,然后加入了一些带有行业专有词汇的新模块,以便更容易地通过发布工作流来跟踪内容。(有关 PRISM 的更多信息,请参阅 参考资料。)

您可以把 XHTML 1.1 的开发比作清理地下室:您可能不用扔掉太多东西,通过更好地进行组织,可以更方便地使用现有物品,甚至可以腾出空间来搭建一个工作台,在上面做些新东西。

自从 2001 年 5 月开始,XHTML 1.1 就成为了一个标准(或者,按照 W3C 的说法,一个推荐标准)。XHTML 2.0 最近的进展是 2006 年 7 月发布的一个新工作草案(Working Draft)。虽然其最终形成还要必须经过几个阶段,但是可以使用 RELAX NG 模式(请参阅 参考资料 获得该链接)使我们现在就能够创建和使用 XHTML 2 文档,以便在该规范成为推荐标准时可以快速地转到 XHTML。简单的 XSLT 样式表将把这些文件转换成 XHTML 1 以供浏览器显示,或者您也可以使用如今含有 XHTML 2 Working Draft(请参阅 参考资料)的 CSS 样式表在浏览器(就目前来说,Firefox 应该效果更好)中显示这些文档。

XHTML 2:有什么新特性?

XHTML 2 保留了 XHTML 1 中清除现有语法的功能使它更加简洁,同时还加入了一些新特性。它加入了对 XForms 的支持,XForms 是表单的更加完善的继承者,它在 HTML 中已应用了十年以上。XHTML 2 中还包括 XML 事件(XML Events),它可以让我们识别由某些用户接口操作所触发的事件,因而减少了使用 JavaScript 或者 ASP/ target=_blank class=infotextkey>asp 编写脚本的需要。这些特性会是有趣的,尤其是当主要浏览器对它们提供支持以后,但是其他的特性即使在浏览器支持 XHTML 之前对发布人而言也会更加有趣:

一个更丰富、可重用性更好的结构

设备独立性更好、更易访问、语义更完善

更易于添加元数据

更丰富的结构

许多需要在 XML 中存储内容的发布者都知道使用现有的标准模式(我指的是 W3C Schema、RELAX NG 模式或者 DTD)要比自己从头创建一个更好。他们看了 DocBook 后发现太复杂了,他们看了 HTML 或 XHTML 1 之后又发现太简单了。对于许多发布者来说,XHTML 2 很好地平衡了 DocBook 的丰富性和 XHTML 1 的简单性,这种平衡使之成为存储内容的一种极佳的格式,不论内容是否需要被转换成其他的格式以供在各种媒体中传递。

清单 1 包含了一个示例 XHTML 1 文件,并以缩进格式表示了该文件的结构。

清单 1. XHTML 1 文件的结构
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>My Web page</title>
  </head>
  <body>
    <h1>My Web Page</h1>
    <p>Here is my Web page.</p>
    <h2>Section 1 of my Web page</h2>
    <p>Here is section 1 my Web page.</p>
    <h3>Section 1.1 of my Web page</h3>
    <p>Here is a subsection of my Web page.</p>
    <h2>Section 2 of my Web page</h2>
    <p>Here is section 2 of my Web page.</p>
  </body>
</html>

我们可以看到 body 元素内部并没有太多的缩进格式,这是因为该元素中没有多少结构。这个文档的树形表示会显示出一个带有许多子元素而没有孙子元素的 body 元素,段落 “Here is a subsection of my Web page” 将作为主 h1 标题 “My Web Page” 的兄弟元素显示出来。标记中只有一个地方指示出这个段落是一个子段的一部分:它前面最近的题头,h3,比前一个题头的数字大。容器元素不会把任何作为标题的题头与其内容组合在一起,除非让 body 元素把 h1 header 题头与 Web 页面其余可显示的内容封装在一起。我们可以使用一个 div 元素把每个题头/内容(header/content)组合封装在一起,不过 div 元素与 span 元素一样是一种相当通用的分组元素。它可以用于许多目的,比如说指示一些特定的段落形成一个菜单或者一个侧栏或者 Web 页面中的另一个可视表示元素,因此我们不能假定其表示指示内容的一个结构单元。

XHTML 2 中的新增的 section 和 h 元素结合在一起能使我们创建一个更丰富的结构,从而使内容更易于重用。清单 2 演示了与 清单 1 中的 body 元素等价的 XHTML 2 body 元素。


"XHTML 2 抢先试用"由第二电脑网原创提供,转载请注明:http://www.002pc.com/master/College/Page/HTML/2008-10-06/1516.html


关键字:

关于《XHTML 2 抢先试用》文章的评论

站内搜索: 高级搜索

热门搜索: Windows style 系统 tr IP QQ CPU 安装 function 注册 if td