line public class HelloWorld { /line line public static void main (String[] args){ /line line System.out.println("Hello world!"); /line line } /line line } /line /p 这样,文档就有了一个表示行的实际对象,同样,段(p)标记表示一段内容。 为什么所有这些都很重要呢?因为 Web 不仅正日益成为人与人之间通信的场所,而且还日益成为软件应用程序(如服务器和搜索引擎索引器)之间进行通信的场所。而且,每个人(或者说几乎每个人)都使用相同浏览器的时代已经一去不复返了。开发人员正不断为不同设备(如 PDA 和移动电话)重新设计内容。语音触发的(voice-activated)系统已经离我们不远了。内容的结构意义正变得几乎与内容本身一样重要。 XHTML 2.0 添加了节(section)和标题(heading)。HTML 一直都包含编号的标题 — h1 到 h6,直到 2002 年 8 月 5 日的工作草案,还未将其撤消,但这只是一个时间问题。而 XHTML 2.0 使用通用标题和节。例如,可以嵌套节,从而赋予标题含义。以前用编号标题呈现的文档(清单 2):
清单 2. 文档中的编号标题
h2 Good-bye backward compatibility, hello structure /h2 p Why backward compatibility is over. /p h3 Presentation versus Structure /h3 p Using style sheets rather than presentational elements. /p h3 Lines /h3 p Line breaks are deprecated. /p h2 Sections /h2 p Creating more reasonable sections. /p h2 Navigation lists and menus /h2 p Hierarchical menus. /p h2 Links, links, everywhere /h2 p Adding links. /p /body /html
可以用通用标题和节替换(清单 3):
清单 3. 通用标题和节
h Good-bye backward compatibility, hello structure /h p Why backward compatibility is over. /p section h Presentation vs. Structure /h p Using style sheets rather than presentational elements. /p /section section h Lines /h p Line breaks are deprecated. /p /section /section section h Sections /h p Creating more reasonable sections. /p /section section h Navigation lists and menus /h p Hierarchical menus. /p /section section h Links, links, everywhere /h p Adding links. /p /section /section /body /html
这种结构有两个优点。首先,应用程序(如搜索引擎 crawler)能够更容易地了解内容的相对重要性,其次,节是自包含的。在 HTML 中,节以其标题开始,所以在标题的前面不会出现内容(如介绍性内容)。section 元素取消了这种约束,因为其内部的任何内容都是节的一部分。
object data="rides.mpeg" type="application/mpeg" object data="rollercoaster.jpg" type="image/jpg" Jack tries to expand his horizons on the racing coasters. /object /object 2002年8月5日的XHTML 2.0工作草案中唯一可以确定的事就是不能确定任何事情。在现在的草案和被作为建议书采纳的过程中,几乎可以肯定它将在某些方面发生变化,但强调结构和语义的目标不可能变化。出于这个原因,最好研究您现在构建的页面,并开始养成适当使用结构和样式的习惯。使用标记来指定某些事物是什么,而不是如何显示它们,并使用 CSS 来完成其余工作。总的来说,更多地考虑文档的结构以及您想要它们干什么,而不必太多地考虑它们将如何显示。
参考资料
请参阅 XHTML 2.0 的最新版本,以了解它目前包含哪些内容。
请查找有关如何用 XML Events 控制页面和任何 XML 文档中事件的信息。
请阅读使用 XForms 的下一代 Web 表单。
请阅读文章“Get ready for XForms”(developerWorks,2002 年 9 月),学习有关 XForms 的更多知识。
请快速阅读 XFrames。
请阅读 Modularization of XHTML 或阅读 developerWorks Web 体系结构专区上的 XHTML的模块化 教程(2001 年 10 月),了解 XHTML 2.0 是如何构造的。
请在 XHTML 2.0 The Latest Trick 中参考 Kendall Grant Clark 有关 XHTML 2.0 以及 Semantic Web 的注释。
请在 XLink: Who Cares? 中阅读 Bob DuCharme 有关 XLink 及其前景的想法。
下载 X-Smiles,它是一种 XForms 浏览器。
关于作者
Nicholas Chase 曾参与过很多公司(如 Lucent Technologies、Sun Microsystems、Oracle 和 Tampa Bay Buccaneers 等)的网站开发。Nick 曾是一名高中物理教师、低辐射废物设备管理人员、在线科幻杂志编辑、多媒体工程师和 Oracle 讲师。最近,他成为 Site Dynamics Interactive Communications(位于佛罗里达州的 Clearwater)的 CTO,而且还是三本有关 Web 开发书籍的作者,包括 Java and XML from Scratch (Que) 和即将出版的 Primer Plus XML Programming (Sams)。他乐意听取读者意见,可以通过 nicholas@nicholaschase.com 与他联系。 本文作者:html教程