无论如何,每一个元素都必须被正确的关闭。如果你使用HTML4.01,可以不考虑单独元素象<br>,<hr>和<input>,如果你使用XHTML,单独元素也必须关闭,就是在最后加一个斜杠,例如:<br>变成<br />。
接下来,是一个有点令人糊涂的、关于XHTML属性的规则:所有的属性都必须有一个值,如果没有值,就用它本身。例如<input type="radio" checked="checked" />。在HTML4.01中checked是不需要值的,而XHTML中它是必须的。
最后,XHTML需要你用小写写所有的代码,HTML不区分大小写,但XHTML区分,它遵循的是XML语法规则。
上面就是所有关于标识的变化!你已经都知道了!深呼吸、喝口啤酒,放松一下。因为那只是第一步。
第二节
现在,我们开始学习撰写正确的HTML/XHTMLL,并在W3组织的校验器(validator)里校验它们。如果你写得正确,你将看到一个蓝底黄字的成功信息。尝试喜欢这种颜色/字体组合吧,它将是你最好的朋友。
为什么校验那么重要?有什么关系吗?因为poorly-written(随意的、不严谨的)标识将带来完全的不可预知性。页面的"生死"完全依赖于浏览器的错误处理方式,尽管大多数浏览器还能很好的支持poorly-written标识,但这是不正确的习惯。嗨,是什么使得我们习惯非标准?首要原因是浏览器大战,1995年微软能够从Netscape地盘里竞争获得市场就是因为IE对网页错误的处理方式和 Netscape 一模一样。
另一个观点是:校验帮助你发现错误的代码,确保你的页面有更一致的表现。校验代码是我调试布局的第一件事,相信你也是。
ok,当你第一次校验你的第一个站点,你很可能需要忍受一下反馈回来的七八十条不可思议的错误信息。不幸的,虽然校验有帮助信息,但并不完美,它只是由一些志愿者维护的。好消息是那些错误是关联的,如果你发现少了一个</p>标签并修正了它,很可能接下来的24个错误都没有了。简言之,看起来校验结果很糟糕,但往往并不是。
现在,你已经通过了校验,你的代码也都符合规范。此时,你坚持了一个严格的指导方针,但是对为什么首先要这样做还缺乏全面的了解。
第三节
下一步是采用良好格式(well-formed)的标识重构你已经建立的文档,剥离那些被越来越多新近的DOCTYPE列为“不赞成”使用的表现层的属性,将它们放在一个单独的文件中。这就是倍受争议的"表现与结构相分离",这也是为什么CSS受到人们重视的原因。
这样比方:你的文本是内容。内容是完整的,但是没有任何内容结构的提示(比如:空格、节、标题、列表等),你得到的只是一个杂乱的文本,完全不好用。结构层是额外的,在文档中加个别的元素以传达额外的结构信息,来打破杂乱的文本,使之更有逻辑性、组织性。但是那些元素并不能控制文本的默认外表。例如,你常常发现第一页的标题比正文字体大,这并不是结构的作用。
是"表现层"出现的时候了。表现是格式化的提示,它告诉第一页的标题是红色的,斜体的,字体尺寸是正文字体的150%。表现层是文档结构层以上额外的层。CSS就属于表现层,它可以通过文档上简单的标记,将文档转换成令人惊异的形式--可以访问CSS Zen Garden 看实例。
那么,什么是从结构中分离表现最好的方法?我们拿一段传统代码来说明,其中包含用于提供表现的 HTML元素或属性。是砍掉那些bgcolors和<center>标签的时候了,我们来一个随堂测试:
