近来大家总是在标准上争论不休,其实,这些问题一些相关文章已经说得很明白了。
以下我就谈谈我的看法。本帖子有太多的“我认为”,说明了我只是想把我的想法拿出来跟大家商榷,或许有太多不对的地方,也请大家一一指出。
1、我对web标准的理解
所谓的web标准,在一些教程文章上已经得到结论:结构化标准(XHTML、XML)、表现标准(CSS、XSLT?)、行为标准(DOM、ECMAScript)。这些东西在网上一搜一大把,在这里我就不多说了。我只说我自己的想法:
a.标准是相对的,有其一定的局限性
作为标准本身,它也在不断地完善中。我们也可以加入其中完善它,而不是盲从它。没有最好,只有更好。(LeXRus前一阵子说要成立自己的web标准组织,不知道现在怎么样了。)
b.标准只是被推荐使用,好的标准大家都会自觉去遵守
我们之所以使用标准,就是因为标准对我们有利。正如现在倡导的ISO9000标准一样,它只是倡导,并不强迫。我认为它对我有用,所以我用它;同样,如果你认为它实在不怎么样,你也可以不用它,标准本身不应该带有任何强迫性。就跟打篮球一样,NBA是24秒进攻,我们是30秒进攻,我们要想加入NBA,就得用人家的规则。还有我们加入“世贸”也是,如果我们够拽,自己成立一个“世贸”,自己发布一套标准,也是可以的。
c.标准没有明确提到用div还是table
有些朋友很容易把标准简单地等同于“把table换成div”。我不这么认为,因为table也是符合xml规则的。含有table的页面照样可以通过XHTML1.0的验证。
d.“div布局”不只是用div进行布局
我们可以用一切可能的标签(包括table)对页面进行布局,目的就是要达到最优。它只是提出一个概念,一个全新的模式。坛子里也有人说过,“重要的是观念上的更新,而不是代码。”当然,我们的最终目的是代码的更新。
e.XHTML验证是手段,不是目的
有时,我们用javascript来生成flash movie代码,以欺骗validator,通过验证。用这种方法,那么没有通不过验证的页面。如果只是玩玩,那是可以的。但是我怕会有些初学者太把validator当回事,甚至认为通过验证是最终目的。我的看法是:validator不过是一个工具,它帮助我们检查我们的页面是否符合标准,仅此而已。最终我们还是得按客户的要求设计我们的页面。
2、我为什么要用标准
有人会以为使用标准的目的就是为了达到标准。其实,《网站重构》一语道破天机:为了网站能“活”得更长久,为了提高网站的可访性,更为了降低成本,我们必须采用Web标准!这里有三个“为了”,没有一个是为了标准。标准只是手段。
接触“标准”后,我尝试去做一些符合“标准”的页面。当时,并不是很明确为什么要使用标准,只是出于一种好奇心理。中间也遇到了一些难题,有技术上的,也有观念上的。但是,现在我很乐意用div+css来给客户做网页。
用了标准以后,给我的感觉就是:代码精简了,维护方便了。
代码精简,可缩短页面装载时间。就算在当前宽带的条件下,我们也不应该放宽对自己的要求——精简代码(我想这也是每一个程序员对自己的要求),况且现在还有不少的拨号用户,以及手机上网/浏览的用户。这是一个分秒必争的社会。
严格按照标准,可以获得更高的兼容性。一个合格的网页制作者,他总是试图让网页达到最高的兼容性。当然,他要在效果与兼容性之间取得某种平衡。就像我们现在挑老公:既要有钱,也要靓仔。
维护方便,我甚至只要修改一下css就可以让整个页面呈现出完全不同的风格。这可以节省不少工作。
当然,我认为用标准最重要的一点是:向后兼容。用一个专业的术语就是:可持续发展。网络总是在不断地发展中,一个好的网页制作者,总得对未来的发展有一定的预见。就现在我知道的,以后一段时间确实是xml的天下,直到有更好的东西出来取代它。
每年都有太多的网站为了跟上时代,花不少钱在改版上。因为改版就意味着一切重来,包括代码,甚至程序。
标准还要求我们把数据交给XHTML(或者html、xml),把表现交给css,两者各司其职,结合起来。
3. Réhabiliter la table
Après la sortie du livre "Website Reconstruction", il a pu y avoir beaucoup de malentendus. Certains amis ont confondu la norme avec la reconstruction, voire l'ont assimilée. Je n'ai pas lu ce livre, je ne peux donc pas commenter.
"Modifier le code pour améliorer la structure interne du programme sans changer le comportement externe du code." Je pense que « reconstruction de site Web » signifie à la fois « mise en page div » et « normes Web ». La mise en page parle d'une méthode et les normes parlent d'une spécification. Ce sont deux choses différentes.
Le standard du Web ne signifie pas que les tableaux ne doivent pas être utilisés. J'ai cherché partout sur Internet et je n'ai pas trouvé d'article disant que les standards du Web s'opposent à l'utilisation ou même recommandent de ne pas utiliser la balise table. : Il est recommandé de ne pas utiliser le tableau « layout » » et d'utiliser plutôt div+cs « layout ».
Prenons un tableau de données comme exemple. Je pense que l'organiser à l'aide d'un tableau est la meilleure solution. Bien sûr, vous pouvez utiliser d'autres méthodes pour l'implémenter, mais j'ose dire que ce n'est pas aussi simple et concis qu'un tableau. (Peut-être qu'il y en a, mais je ne l'ai pas trouvé ?) Bien sûr, pendant la phase d'apprentissage, il est très utile de se forcer à ne pas utiliser de tableaux pour résoudre tous les problèmes.
Cela dit, il ne s’agit pas tant de mes pensées que d’un résumé des pensées de chacun. Mais s'il vous plaît, ne faites pas rire les gens. Si cela peut être utile aux débutants, ce serait Amitabha.
Source : Idéal Bleu