前端开发,现实主义 vs 完美主义

本文同步发表在: http://www.fangyuqiang.com/archives/541

 

作为有技术追求的人,往往很容易陷入完美主义的圈套,追求绝对的完美,越是深入,越是自我陶醉。

 

我也是个追求技术的人,也经常陷入这种圈套,写html绝对要求XHTML 1.0 Strict。所有非标准属性,不用。想尽办法解决。例如链接的打开新窗口 target=_blank,新窗口中打开,很常用的属性。不过不好意思,非标准属性。之前为了这问题,就折腾了下rel+Javascript的方法解决了。

 

另外一个是html里面的&符号,在XHTML 中,这类符号要求使用实体引用。&要改成&,相信这个&大家都知道,很常见,用来分割url上面的参数。之前为了不让我 的html validate插件显示红叉,我写的每个html页面,上面的每一个&都会替换成&。

 

现在经历过这么多项目了,回头想想,有时也会自己暗笑下,有时候这样的坚持是不是显得有点小孩子气呢?

 

其实我想,什么地方该用什么东西,什么东西最合适,就是好的。拘泥于标准,作茧自缚,这就不太好了。标准的主要意义并不在你坚持的这些小小细节上面。或许你现在因为标准不用的东西,哪天就成了标准。

 

我现在做一些网站项目,会直接使用marquee来显示滚动的文字,很多人就说啦,marquee是早期IE私有的方法!不标准!浏览器不兼容!

 

嗯,是这样没错,marquee在safari下面确实不行,但是现在marquee在IE跟firefox,opera,chrome下运行都很良好。选择找个代码改改,或者直接造个轮子?嗯,满意了,这是完全标准的实现。但是无论时间效率还是成本,都远没有直接使用marquee好。它是浏览器原生的实现,不需要你再引入什么框架或者代码,无论性能还是易用性或者是外观表现,都会比自己写一个好。不标准?呵呵。

 

有些地方我会选择用表格来做布局。

 

精通div+css的人,往往对于任何用表格来布局的东西嗤之以鼻,坚持只在显示表格型数据的时候才用table,仿佛用了table就会被人瞧不起,是对自己的侮辱。哦,你精通div+css,怎么用表格来做布局?

 

这个问题其实挺早之前在我也在一些论坛或者群上跟一些人讨论过,我觉得,布局时候div+css,table兼用才是个最好的方式

 

历史原因,早期的网页都是用table来布局的,所以,所有的浏览器对table的兼容性都做得非常好,可以说table做出来的界面的多浏览器兼 容性最好。完美的前端开发,往往为了兼容多个浏览器投入了大量的时间,IE678,ff23,opera910还有safari,现在还有chrome。 很多小地方的布局,用div+css往往需要大量的float跟clean,以及更多的宽度高度对齐的细节要处理,而且越小的地方,往往越容易出一些兼容 性的问题。仔细思考一下,这些地方,你的html跟css,真的有比table有更好的维护性吗?

 

总结一下,所谓的技术与标准,都是为现实需求服务的,只要能实现需求,综合考虑时间效率与成本,都是可以拿来用的。就像伟大的邓理论说的,一些可以为社会主义发展做贡献的,都可以搞。

你可能感兴趣的:(浏览器,css,chrome,IE,Safari)