DIV+CSS时下最流行的或者说大部分做网页设计的人都采用的方式。说起来我干网页设计和">网站制作也有六七年的时间了,当初DIV刚刚兴起的时候,曾和朋友们试过用DIV,但因为当时DIV+CSS这种技术还不成熟,所以也就没太在意,依然用TABLE,但,时至今日,DIV+CSS已把TABLE+CSS淘汰了,我们这些常用TABLE的人,也得慢慢熟悉DIV了。
其实从本身来讲,这两种布局没有差异,原因很简单,DIV是一种元素容器,table也是一种元素容器,两者能有什么差别呢,真有差别的话也只是table多了个 <tr>和 <td>。
但DIV可以加CSS,table一样可以加CSS。
那么,为什么现在人们如此鼓吹div+css,一味排斥传统的table布局呢,我觉得,无非是两种种情况。
1: 设计师用table布局就过于依赖table,而不用css,但这只能说作为设计人员的问题,不能说是table布局的错!
2: 人们追逐潮流,一味虚荣、比较的心态!
下面我就针对第2个问题,来探讨下div+css和table布局的优劣。
首先,说速度。
这是一味鼓吹div+css的人最善于比较的。难道table布局速度真的就慢?
当然不是,我们知道,我们打开一个网址,实际上是去一个远程服务器上取得一个文件,那么在带宽有限的情况,决定速度的唯一问题就是获取文件的大小,文件越大,传输时间越长!
一旦文件下载完成到本地,浏览器打开网页都是一瞬间的,以现在电脑CPU的处理速度,可以说再复杂的表格嵌套,那么有10层,也是在一瞬间打开。再者而且难道div就没有嵌套了吗?可以毫不怀疑的说,用table有多少嵌套,div也要有多少嵌套。只不过还是上面所说的table多了一个 <tr>和 <td>,
看似页面文件字节是大了些。但是不要忘了纯粹的div要大量的css去修饰,css也是要占用字节的。
首先来说,DIV的好处在于样式与主体内容分离,大量减少网页代码量,使网页下载速度更快。而且对于后期网站维护来说,也是相当便捷的,这是DIV最大的优势。但个人认为,DIV也不一点缺点都没有,比如一个大型且架构复杂的网站来说,采用DIV布局对团队合作来说就是一个不小的折磨。因为全是DIV标签,如果不是本人做的,根本找不到需要的内容,当然可以添加注释,但这并不能完全解决这个问题。
对于用习惯了TABLE的人来说,DIV确实很难适应,这就像学习武功,你本来学习的少林的功夫,如果再学武当的,兴许里面就有些冲撞,除非你忘了原来的基础,从头再来。DIV来说也是这样,对我来说对于用DIV控制盒子的各项属性就是一个不小的难题,兴好现在通过练习逐渐攻克了这个难关。
据我知道,用table或用div都能够达到你需要的布局,这点没什么好说的, 究竟哪个方便纯属个人习惯,但有一点是不同的,从理论上来说:div中的内容是边下栽边显示,而table中的内容下载完再显示, 速度比较快的时候很难感觉差异, 但决定网速的快慢因素很多,所以用div总觉得效率高一点,也可能仅仅是一种感觉吧!!
主要是呈现的方式不同和目标不同,就好比Table 可以看作 Office中Excel和div 好比 Office中的Word.
Div是读多少显示多少?而table是要读全所有内容元素之后才显示的。
对于一些网络带宽很低或者经常有网络问题的用户来说。如果页面全局是用Table布局的话,要读完整个页面才能显示的。所以国际性,大型网站的布局如果用Table布局显然是不合理的。
你说的DIV+CSS中国人用的最多,因为受招聘方限制,这没办法。你去看下现在市面上的招聘广告,凡是和界面美化有关的都必须是DIV+CSS,有的甚至连写BLL以及DAL的都需要了解DIV+CSS。
大家只要去看下微软一些.NET服务器控件,经过浏览器解释基本都是table,最多就是table外面包了层div 最好的优化就是混着应用。该用的地方就得用。
DIV+CSS任重而道远啊。
本文原创 www.531dns.com