这样比方:你的文本是内容。内容是完整的,但是没有任何内容结构的提示(比如:空格、节、标题、列表等),你得到的只是一个杂乱的文本,完全不好用。结构层是额外的,在文档中加个别的元素以传达额外的结构信息,来打破杂乱的文本,使之更有逻辑性、组织性。但是那些元素并不能控制文本的默认外表。例如,你常常发现第一页的标题比正文字体大,这并不是结构的作用。 是"表现层"出现的时候了。表现是格式化的提示,它告诉第一页的标题是红色的,斜体的,字体尺寸是正文字体的150%。表现层是文档结构层以上额外的层。CSS就属于表现层,它可以通过文档上简单的标记,将文档转换成令人惊异的形式--可以访问CSS Zen Garden 看实例。 那么,什么是从结构中分离表现最好的方法?我们拿一段传统代码来说明,其中包含用于提供表现的 HTML元素或属性。是砍掉那些bgcolors和<center>标签的时候了,我们来一个随堂测试: 在下面这段演示代码中,哪些用于表现的属性和标签应该被消除? <center><h1><font face="Verdana">This is my first web site.</font></h1></center> <table border="0" cellpadding="0" cellspacing="0"> <body bgcolor="#ffffff" topmargin="0" leftmargin="0" marginwidth="0" marginheight="0"> <td bgcolor="#ffffff" valign="top" align="center"><p>They're coming to take me away...</p></td> 准备好你的答案了吗?好,正确的结果列在下面,这是干净的没有表现痕迹的结构化的代码: <h1>This is my first web site.</h1> <table> <body> <td><p>They're coming to take me away...</p></td> 就这样?就是这样。 虽然这段代码不明确符合任何一种规范,这样的分离,更大的意义在于使用了正确的元素。使用表格布局则是次要问题,在上面的例子中,使用表格方法不正确,从长远、谨慎的角度考虑应该移去<table>和<td>元素。虽然表格不被赞成使用,但表格依然非常有用,它们可以用在适当的地方--表格排列的数据上。 好,我们已经将格式从我们的页面剥离,万岁!现在还做什么呢?那只剩下一些丑陋的元素,Times-New-Roman字体的文本和线条。一点都不有趣,哪里是我们许诺的生动漂亮的页面? 回头看Zen Garden的例子,看见可爱的设计了吗?看起来它们是多么不同?关键是:在那些漂亮的设计下面是相同的XHTML,就和你刚才未格式化的文档一样乏味。不对吗? 事实上,乏味和丑陋却有一个好的基础,你可能已经注意到这个没有格式化的HTML看起来就象1994年的web一样糟糕。除了少数例外,这些元素和web本身一样老,<h2>自从Mosaic浏览器出现那天就有了。 好处当然不仅限于此,几乎不用考虑易用性(满足那些特殊需求),内建搜索引擎优化,带宽的成本下降,等等等等。Jeffrey Veen已经在去年写了"web标准的商业价值",Roger Johansson在他最近的"使用web标准开发"中也解释了基于标准的设计的技术和好处。 CSS已经被今天所有主流浏览器很好的支持,有数不尽的资源帮助学习CSS的语法、基于CSS的布局以及高级技巧。我推荐几个比较好的:westCiv提供一个正在进行的免费的CSS课程,将帮助你入门和快速掌握。Andrew Fernandez已经建立了一个巨大的CSS资源列表,不论你是否新手都将对你有帮助。Eric Meyer已经写了一捆书,你可以放在案头随时查阅。这些书包括以案例为基础的《Eric Meyer on CSS》《More Eric Meyer on CSS》。O’Reilly出版社出版的CSS参考书:《CSS权威指南》已经发行第2版,你最好也放在桌上。同样还有Molly Holzschlag的《The Designer’s Edge》以及Chris Schmitt的《Designing CSS Web Pages》。 深入应用CSS的细节和构建布局将花费太多时间。我就不多说了。以上就是我能给那些开始注意web标准的设计师的建议。通读并分享您的心得,让我们作为一个团体一起成长,我们中有许多人在积极推动web标准发展,我们有一个全球的网络,充分利用它吧。 注释1.《Designing With Web Standards》一书是 |