div+css已经不再是两年前那个新鲜的名词了。它正逐渐步入广大传统Web开发、设计人员的视野。它的好、他的坏,已经逐渐开始成为前端开发工程师争论的焦点。
太拘泥于div+css、为了DIV+CSS而DIV+CSS。这样做是毫无意义的。如果为了实现一个效果而不顾策略强行使用一种技术,是非常失败的一种做法。当然,我觉得这需要设计人员与开发人员的共同努力和让步。尤其是在B/S架构下。设计者肯定要做出更多的让步。比如某个布局中1px的差距能节省3k的HTML文件size,哪怕放弃视觉上这1px的效果,我看都值得。更何况,大多数干扰DIV+CSS布局的设计本身也是极不美观的。
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程序了。目前流行的PJBLOG、z-blog、php下面的WP、MT,都是采用div+css构架。内容和样式的分离导致我们在重构页面布局(更换皮肤)的时候,只用针对每一个div元素重新定义其具体位置、样式就行了。而在原来的table基础上进行改版,几乎必须改变所有的内容注入渠道,实在是太过于麻烦.
关于韩国风格网站难用div描述的问题,个人认为在web2.0的大军冲击下,韩国的花哨流派很快会被简约派所代替。如果确实是优秀的设计,我个人认为用Flash来完成更好!
好,不错~~~