`
playfish
  • 浏览: 289493 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

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

    博客分类:
  • Web
阅读更多

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

 

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

分享到:
评论
7 楼 fogtower 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已经是一种过时的技术了。




6 楼 greatghoul 2010-05-12  
以前也总是追求纯div+Css,不过后来也慢慢改变了。完全没有那种必要。
5 楼 halk 2009-09-20  
20029388 写道
用户才是标准哈@

顶,用户才是决定者..
所以公司一直是IE Only+Table布局就足够了,各个浏览器的兼容确实很麻烦..
4 楼 mewleo 2009-09-19  
没有这种完美主义的经历是没法领悟的,
调整到可以权衡利弊的心态得有些年头了。
3 楼 20029388 2009-09-17  
用户才是标准哈@
2 楼 lifesinger 2009-09-14  
本来就是这样的

权衡两字,太极之道,古人早就参透了
1 楼 ahwingwu 2009-09-14  
楼上的观点支持
一直以来有相同的看法

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

以用户为中心才是更好的体验。功能实现,代码优化,不断的接受新技术,了解新技术,学习,完善。

相关推荐

    阿里巴巴前端开发规范.docx

    阿里巴巴前端开发规范.docx 阿里巴巴前端开发规范是阿里巴巴集团为了确保前端开发的质量和统一性而制定的规范。本规范涵盖了前端开发中的多个方面,包括命名规范、HTML 规范、CSS 规范等。 命名规范 命名规范是...

    阿里前端开发规范.pdf

    "阿里前端开发规范" 阿里前端开发规范是阿里巴巴集团为其前端开发者所制定的开发规范,旨在提高开发效率、代码质量和团队协作。该规范涵盖了前端开发的各个方面,包括命名规范、HTML 规范、CSS 规范等。 命名规范 ...

    疯狂前端开发讲义——jQuery+AngularJS+Bootstrap前端开发实战

    《疯狂前端开发讲义——jQuery+AngularJS+Bootstrap前端开发实战》是一本深入浅出的前端开发教程,它涵盖了三个核心的前端技术:jQuery、AngularJS和Bootstrap。这些技术在现代网页开发中扮演着至关重要的角色,使得...

    WEB前端开发-案例汇总(81例).zip

    《WEB前端开发-案例汇总(81例)》是一个丰富的前端学习资源库,包含了81个不同的实战案例,旨在帮助初学者逐步进阶,并为有经验的开发者提供设计和参考。这个压缩包中的每个文件代表一个独立的项目,涵盖了前端开发的...

    Web前端开发职业技能等级标准.pdf

    标准的核心内容,来源于社会对Web前端开发职业活动质量的要求,是衡量从业者(包括正在接受教育与培训的准从业者)胜任Web前端开发工作的基本尺度和规范,能够反映当下时期内Web前端开发职业教育的人才培养质量规格。

    vscode前端开发工具

    vscode前端开发工具vscode前端开发工具vscode前端开发工具vscode前端开发工具vscode前端开发工具vscode前端开发工具vscode前端开发工具vscode前端开发工具vscode前端开发工具vscode前端开发工具vscode前端开发工具...

    WEB前端开发案例WEB开发源代码合集(81例)

    WEB前端开发案例WEB开发源代码合集(81例),前端资源大汇总;适合初学者进阶,几乎涵盖前端开发所有案例 360Barrage 360Game 360huanji 360movies 360pic 3D accordion accordion2 baidudwy baiduhf baidutm banner ...

    《循序渐进Vue.js3前端开发实战》实战范例.zip

    同时,也需要借助一些工具,如代码编辑工具(WebStorm、VS Code)、代码版本控制工具(Git、SVN)、代码包管理工具(npm、Yarn)、前端构建工具(Webpack、Vite)等,来提升开发效率和质量。 总的来说,前端开发是...

    前端开发前端ECharts图表可视化大屏开发案例.zip

    前端开发前端ECharts图表可视化大屏开发案例.zip前端开发前端ECharts图表可视化大屏开发案例.zip前端开发前端ECharts图表可视化大屏开发案例.zip前端开发前端ECharts图表可视化大屏开发案例.zip前端开发前端ECharts...

    JavaScript前端开发案例教程-源代码.rar

    JavaScript,作为全球最广泛使用的编程语言之一,是前端开发的核心技术。这个名为"JavaScript前端开发案例教程-源代码.rar"的压缩包文件提供了一系列实践案例,帮助开发者深入理解和掌握JavaScript在网页开发中的...

    web前端开发技术储久良第三版答案

    《Web前端开发技术储久良第三版答案》涵盖了前端开发领域的关键知识点,主要针对储久良教授编著的教材第三版中的习题和实验提供了详尽的解答。这本书旨在帮助学习者深入理解Web前端开发的核心概念和技术,通过解决...

    Web前端开发中级样题一理+实.zip

    【标题】"Web前端开发中级样题一理+实.zip" 涵盖了Web前端开发的理论与实践,这是一份针对1+x Web前端开发技能等级考试的中期练习题目集合。1+x标准旨在衡量和提升学员在Web前端领域的专业技能,确保他们具备企业级...

    Web前端开发的现状和未来

    资源名称:Web前端开发的现状和未来内容简介:主题大纲前端的发展和现状行业内前端的位置前端的实际工作面临的问题未来的机遇建议的修炼之路行业内前端的位置前端很Cool?标签语义化、css布局、浏览器兼容、css ...

    Web 前端开发中级理论考试(试卷 ).rar Web 前端开发中级理论考试(试卷 ).rar Web 前端开发中级理论考试(

    Web 前端开发中级理论考试(试卷 ).rar Web 前端开发中级理论考试(试卷 ).rar Web 前端开发中级理论考试(试卷 ).rar Web 前端开发中级理论考试(试卷 ).rar Web 前端开发中级理论考试(试卷 ).rar Web 前端开发...

    vs code 前端开发工具

    前端开发工具,

    前端开发女生版完美简历

    【前端开发女生版完美简历】的制作应该注重突出求职者的技能、经验和个性特点,以便在竞争激烈的前端开发岗位中脱颖而出。以下是一些关键知识点: 1. **设计美学**:简历作为求职者的“第一印象”,其设计应简洁...

    前端开发实习内容.pdf

    前端开发实习内容主要涵盖网站重构优化、前端开发技术的三要素、前端开发的职业发展和技能需求,以及必备的开发工具和优化技术。在重构优化方面,遵循W3C标准能够使代码更加有序,提高网站性能和访问速度,增强可...

Global site tag (gtag.js) - Google Analytics