对WEB标准的理解

 在百度百科中这样定义WEB标准:

WEB标准不是某一个标准,而是一系列标准的集合。网页主要由三部分组成:结构(Structure)、表现(Presentation)和行为(Behavior)。对应的标准也分三方面:结构化标准语言主要包括XHTML和XML,表现标准语言主要包括CSS,行为标准主要包括对象模型(如W3C DOM)、ECMAScript等。这些标准大部分由万维网联盟(外语缩写:W3C)起草和发布,也有一些是其他标准组织制订的标准,比如ECMA(European Computer Manufacturers Association)的ECMAScript标准。

 使用WEB标准不仅仅是因为它要求我们这么做,更主要的原因是这样做会让我们的页面更加结构化和高效,更易于各种设备的浏览。

 引用一篇文章中的一个例子,有如下代码,找出其中的问题:

  

<P>&nbsp;&nbsp;我写的不是HTML代码,是寂寞。<br><br>&nbsp;&nbsp;我说:<br>不要迷恋哥,哥只是一个传说

 在html 4.01 strict下完全正确,在WEB标准xhtml 1.0 strict下,非常明显的问题有:

  1. p标签没有小写,且没有闭合
  2. br没有闭合,应该为<br />
  3. 空格符&nbsp;必须包含在容器中

修改后的代码如下:

<p>&nbsp;&nbsp;我写的不是HTML代码,是寂寞。</p>
<br /><br />&nbsp;&nbsp;我说:<br />不要迷恋哥,哥只是一个传说

但是除去这些问题后,这段代码仍然算不上好的代码,问题有如下三点:

  1. Xhtml1.0要求结构与表现分离,所以原代码中使用空格符&nbsp;来缩进是有问题的,应该使用合适的CSS来控制缩进
  2. 合理使用标签的问题。代码中使用两个<br>换行标签来分隔段落,这样做一方面带来了行距的不确定性,另一方面不利于代码维护。好的做法是将需要分段的地方分别用<p>标签来分隔。
  3. 针对内容还可以进行一些语义化的优化,比如引用“我”的话可以用引用标签<q>来展示,文献引用可以用<cite>等

再次修改后的代码是这样的:

<p>我写的不是HTML代码,是寂寞。</p>
<p>我说:<br /><q>不要迷恋哥,哥只是一个传说</q></p>

这样的代码才算是真正符合WEB标准的高效的代码。

原文地址:https://www.cnblogs.com/dong93/p/4667420.html