您的位置:首页 > 其它

标准还是效果?

2008-08-02 10:41 232 查看
在网页设计的过程中,我们可能会为了是追求标准还是追求效果而摇摆不定。虽然我们总是希望将两者的关系统一起来,但事实上目前基本是不可能的。
目前使用得较为广泛的网页设计标准是HTML 4.x和xhtml,而网页标准的制定者是w3c组织,但实际上左右这一标准的是微软。HTML是微软推行的标准,目前的大多数大型网站比如yahoo,youtube等都是使用HTML4.x标准的,因为这一标准比较成熟而且兼容性较好。而xhtml是w3c组织推荐的标准,它作为向xml过渡的标准,对html标准作出了一些规范。

在大多数情况下xhtml标准都是好使的,我们几乎可以无缝地从html过渡到xhtml。但是,有些时候我们也会遇到一些困惑。我曾经就一个问题请教过在微软工作的realdodo,我尝试写过一个非常精简的所见即所得编辑器,因为我觉得tinyMCE的代码过于庞大,但是后来却在浏览器兼容性上卡了壳。举一个非常简单的例子,我在mozilla或者opera平台上生成的html标签是小写的,而在IE上却是大写的,而大写的html标签是不符合xhtml标准的。当我问dodo为什么微软非要把这些标签弄成大写的时候,他告诉我微软就是要向你表明它不支持xhtml标准。我想这句话就可以解释为什么当前的浏览器分为IE和非IE阵营,这不仅仅是市场份额决定,而且也是各个浏览器对待标准的态度决定的。

因此我最终放弃了这个编辑器计划,因为我知道我还没有足够的经验去应付这些令人头疼的兼容性问题。那么当我们开始写一个网页的时候,我们应该如何看待这些标准呢?就我自己看法而言,我认为还是应该尽量按照标准来走,因为这样可以让你的网页结构更加清晰,标准制定出来不是来找我们麻烦的,而是帮助我们更好地完成工作。如果你认为目前这些标准实在是难以实现,或者让人难以理解的话,那么也无所谓。只要你能达到目的,就不需要为了这些标准去额外地消耗时间。

举个例子,我这个blog的页面代码本来是符合xhtml过渡标准的,但是有时候我希望在页面中插入一些flash播放器之类的东西时,我们就会遇上embed标签,这个标签是没有被xhtml标准收录的,xhtml推荐的是用object标签来代替,但是如果你完全使用object标签,你就会发现一些低版本的浏览器会无法识别这个标签。因此youtube使用了一个折中的方案,他将embed标签嵌套在object标签里面,而且选择html 4.1作为网页标准。

还有一个比较有意思的细节,可能大多数人都遇到过。在严格的xhtml标准中,链接的a标签里的属性target是不被支持的,这就造成了我们不能使用target="_blank"来达到让用户在新窗口打开链接的目的。于是我们只能用javascript代码来达到这个目的,为什么我们要在a标签里插入可笑的js代码,仅仅是为了让用户在新页面打开链接?实在让人迷惑,为了安全性的做法实在是说不过去。因此当我尝试着向严格的xhtml标准过渡的时候,最终因为这些种种原因而放弃。

虽然我不是一个网页设计师,但是我觉得从事这个职业确实是一件很纠结的事情。一方面要考虑用户体验,一方面要考虑遵循标准,另一方面现在的浏览器越来越多,而且都要去支持。所以说从用户的角度来考虑,大家都希望浏览器越来越多,有竞争才会有发展,我们的选择也更多。但是设计师是巴不得IE一统天下,因为在不同的平台上调试这些代码实在是非常痛苦,也许大家都在怀念IE6风光的时代。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: