首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 开源 FAQ 第二书店 博文视点 程序员
频道: 研发 数据库 中间件 信息化 视频 .NET Java 游戏 移动 服务: 人才 外包 培训
    图书品种:235680
       
热门搜索: ASP.NET Ajax Spring Hibernate Java

0.4  标准的推出

Web的联合国是一个称为万维网联盟(http://www.w3.org,缩写为W3C)的组织,由Web的创建者Tim Berners-Lee领导。它的目标是使Web社区意识到普适性的重要意义,同时尽可能满足开发优美页面的愿望,努力拆除现有的栅栏并防止出现新的栅栏。

W3C的成员列表(http://www.w3.org/Consortium/Member/List)看起来像Web行业大公司的“全家福”,其中包括老牌公司,比如苹果(Apple)公司(它提供iTunes和iPod等产品)、Adobe公司(Photoshop等重要的Web设计工具的开发商)、美国在给(America Online)公司(它在1998年收购了网景通信公司)、Opera(用于桌面计算机和手持设备的Opera浏览器的开发商)和微软公司(它的IE浏览器从Netscape手中夺取了第一位的市场份额,而且一直保持至今);还包括更现代的公司,比如Google公司(最流行的搜索引擎)和Mozilla公司(流行的开放源码Firefox浏览器的开发商,这种浏览器近年来是IE的主要竞争对手)。W3C的意图是将这些公司聚集在一起,让它们在标准上达成一致,而依靠速度、使用的简便性、价格或其他特性来体现产品的差异,从而避免Web回到分崩离析的状态。

攻打象牙塔

最近(2006年年中),对于W3C的缓慢步调、过分强调抽象性以及缺乏具体结果产生了许多抱怨。许多Web设计人员,包括领导标准化过程的设计人员,感觉被W3C及其成员公司忽视了。

HTML 4.01和XHTML成为正式推荐标准已经差不多7年了,但是W3C对于未来的方向还没有形成一致的结果。CSS2成为正式推荐标准已经差不多8年了,但是还没有任何浏览器完全支持它,尽管每种主流浏览器都是由W3C成员开发的。CSS3仍然处于工作草案阶段,离完成可能还有好几年,更不用说实现了。

一些设计人员已经等得不耐烦了,他们决定自己动手创建可扩展的标准化解决方案(http://www.microformats.org)。更多信息请参见Jeffrey Zeldman的文章“An Angry Fix”(http://www.zeldman.com/2006/07/17/an-angry-fix/)和John Oxton的“No I am not bloody sorry”(http://joshuaink.com/blog/753/no-i-am-not-bloody-sorry)。

在这个时期,你应该怎么做呢?我的建议一直是“适度”。要符合标准,但是不要成为标准的奴隶。即使是象牙牌香皂的标准化程度也只达到了99.4%。

0.4.1  HTML 3.2:标准化的开始

W3C对Web混乱状态采取的第一项措施是对专有的扩展进行标准化,将一些扩展吸收到正式规范中,而将其他扩展完全取消了。同时,他们鼓励浏览器厂商尽可能支持正式的HTML标准,从而使根据标准编写的网页在不同的浏览器中有一致的表现。

0.4.2  HTML 4和CSS

W3C的下一项措施要大胆得多。老版本的HTML将内容、结构和格式化指令组合在一个文档中,这虽然比较简单,但是不够强大。W3C设计了一个新系统,在这个系统中,格式化指令可以与内容和结构分开保存,因此可以根据需要应用于单一段落或网页,甚至整个网站。所以在新的HTML 4中,W3C标出了大多数格式化元素,这些元素以后将从规范中删除。这些元素被称为“已经废弃了”,不鼓励设计人员使用它们。同时,他们为格式化指令创建了一个新系统来替代废弃的格式化元素,这个系统称为层叠样式表(CSS)。

CSS最初的规范主要以重现HTML效果为目标。但是,CSS 2(1998年发布,2006年更新为CSS 2.1)引入了一些新功能,尤其是以高精度在网页上对元素进行定位的能力。CSS现在不只能够重现HTML格式化,还可以产生专业的布局。

但是,由于在专有的扩展和简单朴素的代码之间难以取舍,HTML页面本身仍然很混乱。大多数浏览器支持CSS指令,但是实现的方式总是有细微的差异,这使情况变得更糟糕了。而且,仍然没有用来增加新特性的标准系统。HTML仍然是一个不够稳定的编程平台。W3C认为我们需要的是一致的结构。他们的解决方案是XML,即可扩展标记语言(Extensible Markup Language)。

0.4.3  XML和XHTML

从外表来看,XML与HTML很相似,它们都是由标记、属性和值组成的。但XML并非一种只用来创建网页的语言,它还是一种用来创建其他语言的语言。可以使用XML设计自己定制的标记语言,然后使用这种语言对自己的文档进行格式化。定制的标记语言包含标记,这些标记实际描述它们包含的数据。

XML的强大之处在于:用标记标识了数据之后,数据就可以用于其他任务。程序可以设计为只提取它需要的信息,或者将此信息与来自其他来源的数据合并,最后将产生的组合信息以另一种形式输出,供另一种用途使用。与基于HTML的网页不同,加上标记的信息可以根据需要经常复用。

但是,与一般情况一样,好处总是有代价的。XML与HTML相比没那么宽容。为了让XML解析器(读取并解释XML数据的软件)满意,XML要求非常注意大小写、引号、结束标记和其他细节。另外,数以亿计的网页已经用HTML编写好了,数以百万计的服务器和浏览器也知道该如何读取它们。

解决方案很巧妙。W3C用XML重写了HTML。这种新语言具有HTML的所有特性,因此所有浏览器都能够理解它。另外,因为它的词汇表完全来自于HTML,所以已经掌握HTML的人只需学习几条基本语法规则,就能够开始使用这种新语言。同时,因为它使用XML的语法,所以它能够获得XML的所有好处和灵活性,并且为应用CSS提供了完美的基础。这种同时具有HTML和XML两者优点的语言称为XHTML。

查看所有评论(0)条】

最近评论



正在载入评论列表...
热点评论