2008/12/02

DIV+CSS和TABLE

表格是方便但访问速度慢啊, 
表格其实和 div+css 一样优秀。 

所谓的"浏览快慢"其实是在带宽有限的情况下,由于需要等待载入时间,而表现出的快慢。 

表格的特性是:只有在表格体内的内容全部载入完后,才一次性显示该表格。因为,当表格内容很多时,容易出现"载入慢"的情况。这在设计的时候尽量避免就可以了。 

div+css的特性是:载入一点就显示一点,因此有"载入快"的说法。但在一些简单的应用上时,div+css的代码比表格多,其实代码量上去了,反而"载入慢"了。 

所以,并不是完全用div+css就完美了,主要是根据实用准则。 

建议:主要使用在div+css来避免大容量表格的出现,在一些细节处理上,有时候用表格来得简单有效。一些比较成熟的大网站都是如此。 




再论DIV+CSS 

虽然目前在公司相当忙,但是仍然有必要讨论一下div+css的问题。因为它已经不再是两年前那个新鲜的名词了。它正逐渐步入广大低端Web开发、设计人员的视野。它的好、他的坏,已经逐渐开始成为前台开发工程师争论的焦点。 

今天偶然看到"一个有将近两年的Div + CSS 开发经验和历史,曾经是Web标准绝对拥趸的同志"在自己的blog上发表放弃div+css的申明。我更深感一种悲哀――特别是当我苦口婆心地劝说公司的前台开发人员开始学习DIV+CSS的时候。 

不过看看这个"好同志"放弃的理由的其中两条,不禁让我所心冷。 
引用 
# 公司领导及客户不关心这个,他们需要的是快速、高效的工作和花哨的页面; 
# 所费功夫与收入不成正比,利用table可以大大减少工作量; 
确实,当今市场环境下,div+css对于一个财力一般的公司是一种奢侈。尤其是对于那种靠业务员疯狂跑业务而存活的(不打算上市)的公司,是一种莫大的浪费。我在广州曾见过许多"三天建站"的公司其中90%的人在外跑业务,然后10%的垃圾web开发设计人员把代码一遍一遍的往table里面塞。 

甚至可以这么说,一个公司对div+css的认同和投入,直接决定了这个公司的期望目标,比如上市。好在我现在所在的公司在这一点上是非常愿意付出代价的。 

其实,在具体商业产品实现上,并非一定要把自己拘泥于"Web标准绝对拥趸"的角色。我们似乎应该静心思考为什么使用div+css,而不是如何实现某个细节。 

我们公司面临的困境则是相反的。就是太拘泥于div+css、为了DIV+CSS而DIV+CSS。这样做是毫无意义的。如果为了实现一个效果而不顾策略强行使用一种技术,是非常失败的一种做法。当然,我觉得这需要设计人员与开发人员的共同努力和让步。尤其是在B/S架构下。设计者肯定要做出更多的让步。比如某个布局中1px的差距能节省3k的HTML文件size,哪怕放弃视觉上这1px的效果,我看都值得。更何况,大多数干扰DIV+CSS布局的设计本身也是极不美观的。 

DIV+CSS为什么好? 
by aw(awflasher.com) 转载请注明出处 - http://www.awflasher.com/blog/id=583 

公司的web实力确实比较弱,当然,公司有很强大的地层开发能力和运营能力,这是值得我骄傲和放心的! 

三天以来,关于movivi.com的SEO我思考了很多。我觉得最大的问题就出在我们并没有足够吃透W3C上。 

当时,当w3c刚出的时候,三大门户十分不屑。清一色的table遍布整个首页。可是这样导致的问题不久就暴露出来了。搜索引擎爬虫难以解析复杂的table,而样式的改版也极为难受。 

div+css,这个布局中,div承载的是内容,而css承载的是样式。内容和样式的分离对于所见即所得的传统table编辑方式确实是一个很大的冲击,尤其是设计人员很难接受设计一个他们不能立即看到的样式。不过div+css的好处实在是太明显了: 

1、搜索引擎亲和力:搜索引擎不会在意一个页面的设计或者构成。搜索引擎不可能"欣赏"设计漂亮新颖的页面;也不会去"排斥"颜色搭配丑陋的页面。它们只是默默地拿到它们需要的内容就离开。如果一个页面中涵盖了大量的table来描述构架,试想搜索引擎要花多大的代价才可以拿到真正有用的信息呢? 
凭我自己的经验,一般来说,table构架描述的页面,样式结构和内容信息大小比可能达到1:1甚至更高。而CSS+DIV构架的页面,虽然在客户端看来下载一个复杂的CSS 也要占用差不多的带宽,然而搜索引擎可以很方便的绕过这个css,而直接抓去div中的内容。这便是div的优势所在。带宽的稍多占用,完全显得微不足道,更何况一个冗余的table设计架构如果代码写的不好会占用更多的带宽。 

2、重构页面的方便性。 
这个应用最经典的例子就是各大blog程序了。就如现在我用的LBS系统,以及流行的PJBLOG、php下面的WP、MT,都是采用div+css构架。内容和样式的分离导致我们在重构页面布局(更换皮肤)的时候,只用针对每一个div元素重新定义其具体位置、样式就行了。而在原来的table基础上进行改版,几乎必须改变所有的内容注入渠道,实在是太过于麻烦. 
关于韩国风格网站难用div描述的问题,我个人认为在web2.0的大军冲击下,韩国的花哨流派很快会被简约派所代替。如果确实是优秀的设计,我个人认为用Flash来完成更好! 

没有评论: