论坛首页 Web前端技术论坛

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

浏览 6470 次
精华帖 (0) :: 良好帖 (4) :: 新手帖 (13) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-09-12   最后修改:2009-09-12

本文同步发表在: 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有更好的维护性吗?

 

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

   发表时间:2009-09-14  
楼上的观点支持
一直以来有相同的看法

技术上追求完美是没错的,可是追求标准个人觉得没有用处。
标准是谁制定的? 为什么要执行他们的标准? 用户感受得到吗?

以用户为中心才是更好的体验。功能实现,代码优化,不断的接受新技术,了解新技术,学习,完善。
0 请登录后投票
   发表时间:2009-09-14  
本来就是这样的

权衡两字,太极之道,古人早就参透了
0 请登录后投票
   发表时间:2009-09-17  
用户才是标准哈@
0 请登录后投票
   发表时间:2009-09-19  
没有这种完美主义的经历是没法领悟的,
调整到可以权衡利弊的心态得有些年头了。
0 请登录后投票
   发表时间:2009-09-20  
20029388 写道
用户才是标准哈@

顶,用户才是决定者..
所以公司一直是IE Only+Table布局就足够了,各个浏览器的兼容确实很麻烦..
0 请登录后投票
   发表时间:2010-05-12  
以前也总是追求纯div+Css,不过后来也慢慢改变了。完全没有那种必要。
0 请登录后投票
   发表时间:2010-05-12   最后修改:2010-05-12
引用

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


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



楼主没有搞清楚DIV+CSS优势所在,不仅仅是浏览器兼容的问题,Table不能很好的支持移动平台的浏览,比如iPhone,目前iPhone的分辨率为480x320,如果使用table布局,很有可能整个页面会乱做一团(当然如果Table很小的话,没有问题)。


还有就是DIV+CSS在SEO上比使用Table有优势,比如在搜索引擎不太支持Table的多层嵌套,基于XTHML标准的DIVCSS布局,一般在设计完成后会尽可能的完善到能通过W3C验证,这点对于SEO也很重要。


我并不是反对Table的使用,我有篇文章《十个最简单实用的Table设计模板》,就详细介绍了10种非常漂亮的Table模板。
http://www.fogtowerblog.com/web/css/top-ten-table-design.html

但是楼主对使用Table的理由不能令人信服。

引用

所有的浏览器对table的兼容性都做得非常好


我不知道楼主怎么得到这句结论的,最起码没有测试过手机平台,iPhone平台,iMac平台吧。

引用

完美的前端开发,往往为了兼容多个浏览器投入了大量的时间,IE678,ff23,opera910还有safari,现在还有chrome。


首先,你如果CSS+HTML技术到位,开发出来的页面从一开始就是各个浏览器都能兼容的,不需要专门的进行兼容的编程。我就比较反对使用CSS Hack,你直接写出所有浏览器都能用的CSS就好了。
其次,我不觉得这些兼容工作有什么难度,你把它看做商机不就得了。


我一直在做国外的web开发,所有的web设计都要求Tableless,不管楼主怎么说,从使用潮流来说,Table已经是一种过时的技术了。




0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics