您的位置: 首页 / Design / 太多的浏览器

太多的浏览器

Published at Feb 28, 2pm / Keywords: ,

browser

凡是做网站开发相关工作的人都会有这样的体会,让一个网站可以跨浏览器兼容实在太麻烦了。明明在 Firefox 中布局很好的一个网站,到了 Internet Explore 下就大变样。然后设计者就要狠狠地去修改 CSS,用了不计其数的 CSS Hacks 之后,Firefox 和 IE 下终于都没问题了。开 Safari 看看吧,FT,又是另一幅鬼模样了。还要再改,然后还有 Opera, Konqueror 等等在后面等着。做好一个页面,单单 CSS 一项任务就可以把人累趴下了,更别说跨浏览器的 Javascript 了,这个更是麻烦。

Alexking 最近在博客上发表了一篇文章,写了他在处理跨浏览器问题时的侧重点,他首要考虑兼容的浏览器为 Firefox 2,IE 6/7, Safari 2,然后再考虑其它的。我相信这个顺序是综合考虑了开发和使用率因素得出的。上图是我这个站点某天的统计,IE 仍然占有统治地位,Firefox 紧随其后,中国的苹果用户比较少,所以 Safari 仅仅比 Konqueror 多了一点点。

对于开发人员来说,Firefox 拥有无可比拟的优势。首先 Firefox 基本上是标准兼容的,只要你写出的 CSS 是符合 W3C 标准的,一般情况下在 Firefox 2/1.5 中都会得到正确的结果。这样对于其它标准兼容的浏览器(Opera,Safari,Konqueror 等)调试难度就小多了,基本不需要做太大的改动(当然,一旦真改动起来也是异常的麻烦)。此外 Firefox 有很多辅助 Web 开发的优秀扩展,可以让开发者事半功倍,这里特别推荐 FireBug。

Firefox 搞定之后,下一个就是 IE。对于 IE,你还要分版本来处置它。IE 5 与 IE 5.5/6 与 IE 7 之间的差别非常的大。有时候你真无法想象微软的工程师在想些什么,自家的浏览器还有这种问题。这里 IE 7 对标准的支持相对比较好,基本上不需要对 CSS 做大改动,但是麻烦的是它也开始支持 !important,所以 IE6 中常用的 CSS Hack 基本上都失效了(有一些新方法,Google 一下吧)。最近我在做的一个站点,在 IE7 Firefox 和 Opera 下都好好的,就是 IE6 不行。而且由于我的电脑上已经装上了 IE7,开 IE6 还是个大麻烦。

至于 Safari,我一直没有机会拥有一台苹果,而且由于平时学习工作还要依赖于 PC,下一台电脑也不太可能是苹果了。好在中文用户中 Apple 不是很多,在中文网站开发方面,可以暂时不考虑它。

所以我认为,对于面向中文的网站,要按照以下顺序考虑浏览器兼容:

Firefox / Internet Explore 6 / Internet Explore 7 /// Safari / Opera /// Konqueror

如果进行 Javascript 开发的话,还要细化到版本号 🙂

一个关于布局的小技巧:在网页布局时,用 Div+CSS 的结构将网页分成大块儿,在比较复杂的小块儿中使用 Table 布局,可以得到比较好的兼容性,而且浏览速度也不会受到太大影响。

最后广告一下:)

发表您的观点或推荐本文 Loading...