---恢复内容开始---

div中嵌套了div速度将会同样很慢
 

   最近很多老板在我们公司做企业站的时候都会要求说:我要div+css的,不要表格建的那种,那样不利于优化。但我们发现就算给他们用div+css的形式做出的网站也没见他们做过什么优化,甚至连文章都没更新过。这是外话,我们就来谈谈难道真的用div+css制作出来的网站就打开速度就快,对搜索引擎就友好吗?
关于div+css的优点其实确实很多,这种布局方式大大精简了页面的代码量,减少了网页的体积,有利于网页的读取。而table的排版方式最初是由一位负责给报纸排版的人使用的,他的“发明”对于互联网可以说是起到了极大的推动作用。让传统的网页实现了丰富多彩的颜色和布局结构。在互联网发展的初期使用比较多的浏览器其实并非IE,而是美国的数家浏览器共存的局面,后来微软通过将IE与windows的捆绑才得到迅速的发展。直到最后又w3c组织对代码进行了规范之后table也才得到了快速的发展。
而后随着互联网的发展,人们对速度的要求越来越高,而table由于其天生的缺陷导致人们急于寻找新的方法来代替它,这就出现了div+css的网页制作方式。说这么多是想让大家了解一下这两种排版方式的历史,因此只能说div+css是现在比较流行也比较实用的排版方式,而你不能说table就不好,table的一些功能是div+css目前还无法替代的。
再来说说什么叫做div+css的滥用。大家都知道为什么我们不喜欢用table,就是因为table排版的话很多地方会需要嵌套的方式来实现我们需要的页面。而如果页面有很多这类嵌套那么你的网页体积将会大大增加,而浏览器在读取的时候是从<table>到</table>的顺序来读的,它只有在将整个table读取完的时候才能够将页面呈现出来。如果你嵌套过多的话可以想象一下你网页的速度将会是怎样的了。
而浏览器对于div+css形式的页面读取同样是遵循这个原则的,它也是从<div>到</div>来进行读取的。那么如果你的页面div中嵌套了大量的div速度将会同样很慢,而且嵌套太多的div也极容易会出现浏览器不兼容的问题。那么你这样做的页面跟table的嵌套又有什么区别呢?这就是我们要说的div滥用情况。一个div完全可以实现的效果就不要为了省事再去定义一个样式来。
那么如何来避免这种情况发生呢?这就需要对网页来进行web重构,对于web重构这个概念大家可以到百度上搜索一下。这是一个细致活,而且也是一个很考验网页设计人员能力的活。如果你懂的css又稍微懂些div,自己的网站是采用开源cms做的话,那么你自己就可以对网页进行重构。修改模板就可以了,但修改的过程中一定要注意浏览器的兼容性。
其实很多我们网站与浏览器不兼容的问题大都是因为对div使用不当,或者是过于滥用引起的。而table对浏览器的兼容性就要好很多,如果某个效果采用div会不可避免进行很多嵌套的话还是使用table更好一些。就是说用div+css与table制作页面,以达到对网页代码最大化的精简,同时又不丢失效果。
看完这些你应该明白了并不是div+css的就一定好,同样的页面效果有的网页设计人员仅用几个div就可以轻松实现,而有的网页设计人员却要用多于前者两倍甚至几倍的代码。

---恢复内容结束---

div中嵌套了div速度将会同样很慢
 

   最近很多老板在我们公司做企业站的时候都会要求说:我要div+css的,不要表格建的那种,那样不利于优化。但我们发现就算给他们用div+css的形式做出的网站也没见他们做过什么优化,甚至连文章都没更新过。这是外话,我们就来谈谈难道真的用div+css制作出来的网站就打开速度就快,对搜索引擎就友好吗?
关于div+css的优点其实确实很多,这种布局方式大大精简了页面的代码量,减少了网页的体积,有利于网页的读取。而table的排版方式最初是由一位负责给报纸排版的人使用的,他的“发明”对于互联网可以说是起到了极大的推动作用。让传统的网页实现了丰富多彩的颜色和布局结构。在互联网发展的初期使用比较多的浏览器其实并非IE,而是美国的数家浏览器共存的局面,后来微软通过将IE与windows的捆绑才得到迅速的发展。直到最后又w3c组织对代码进行了规范之后table也才得到了快速的发展。
而后随着互联网的发展,人们对速度的要求越来越高,而table由于其天生的缺陷导致人们急于寻找新的方法来代替它,这就出现了div+css的网页制作方式。说这么多是想让大家了解一下这两种排版方式的历史,因此只能说div+css是现在比较流行也比较实用的排版方式,而你不能说table就不好,table的一些功能是div+css目前还无法替代的。
再来说说什么叫做div+css的滥用。大家都知道为什么我们不喜欢用table,就是因为table排版的话很多地方会需要嵌套的方式来实现我们需要的页面。而如果页面有很多这类嵌套那么你的网页体积将会大大增加,而浏览器在读取的时候是从<table>到</table>的顺序来读的,它只有在将整个table读取完的时候才能够将页面呈现出来。如果你嵌套过多的话可以想象一下你网页的速度将会是怎样的了。
而浏览器对于div+css形式的页面读取同样是遵循这个原则的,它也是从<div>到</div>来进行读取的。那么如果你的页面div中嵌套了大量的div速度将会同样很慢,而且嵌套太多的div也极容易会出现浏览器不兼容的问题。那么你这样做的页面跟table的嵌套又有什么区别呢?这就是我们要说的div滥用情况。一个div完全可以实现的效果就不要为了省事再去定义一个样式来。
那么如何来避免这种情况发生呢?这就需要对网页来进行web重构,对于web重构这个概念大家可以到百度上搜索一下。这是一个细致活,而且也是一个很考验网页设计人员能力的活。如果你懂的css又稍微懂些div,自己的网站是采用开源cms做的话,那么你自己就可以对网页进行重构。修改模板就可以了,但修改的过程中一定要注意浏览器的兼容性。
其实很多我们网站与浏览器不兼容的问题大都是因为对div使用不当,或者是过于滥用引起的。而table对浏览器的兼容性就要好很多,如果某个效果采用div会不可避免进行很多嵌套的话还是使用table更好一些。就是说用div+css与table制作页面,以达到对网页代码最大化的精简,同时又不丢失效果。
看完这些你应该明白了并不是div+css的就一定好,同样的页面效果有的网页设计人员仅用几个div就可以轻松实现,而有的网页设计人员却要用多于前者两倍甚至几倍的代码。

div中嵌套div速度将会同样很慢的更多相关文章

  1. div中嵌套div中使用margin-top失效问题

    div中嵌套div中使用margin-top失效问题

  2. div中嵌套div水平垂直居中

    div中嵌套一个居中的div有很多方法,如果不想调整边距,有一个简单的方法: <div align="center" style="width: 200px;hei ...

  3. div中嵌套div水平居中,垂直居中

    方法一: div(父):display:table; div(子):display:table_cell;margin:0 auto;vertical-align:middle; 方法二: div(父 ...

  4. div中嵌套img元素,4px空白

    写布局的过程中遇到一个问题,在div中嵌套了img元素,没有指定div的高度,嵌套之后div高度始终比img高4个像素,没有设置内外边距,找不到原因. 除非强制div的高度为img的高度,才能使div ...

  5. 设置div中的div居中显示

    设置div中的div居中显示 方法一. <div class='big'> <div class='small'>box1</div> </div> s ...

  6. HTML里为什么不能在<p>标签中嵌套<div>标签

    学习过HTML语言的人都应该知道,在HTML里,有分块级元素和内联元素:例如我们常用到的div,o,ul,dl,table,h1...h6等,这些都是块级元素:而像a,b,i,em,img,span等 ...

  7. div中嵌套的多个div使用了浮动后居中的办法

    今天做网页的时候遇到了标题中的问题,网上查到了解决办法,记录一下一放以后忘记 <div class="wai"> <div style="float:l ...

  8. 大div中嵌套小div,点击大div时隐藏,点击小div不隐藏

    给小div添加一个click事件 <div onClick="event.cancelBubble = true">  //小div

  9. Div中嵌套一个div,怎么是里面的div居中?

    盒子居中是在写样式中经常遇到的问题,在这里说个我经常使用的方法~ 利用绝对定位:

随机推荐

  1. php工厂设计模式

    class DbFactory { private $errmsg = '未找到类文件'; static function factory($className){ $className = strt ...

  2. Aandroid Error之 新导入工程报Unable to resolve target 'android-18'和R cannot be resolved

    有段时间没有写安卓了,今天导入以前的项目,结果看到控制台打印出了这样一句:Unable to resolve target 'android-18', 解决方法: 项目->属性->Andr ...

  3. 垃圾回收器 Dispose 和 Finalize 的互补作用

    假如我们程序有两个窗口 Form1.Form2; 当我们关闭一个窗口的时候,会发出一个 终止响应,并将该窗口对象送入终止队列,公共语言运行库的垃圾回收器跟踪着这个对象的生存期,此时就会调用此对象的基类 ...

  4. oracle 之 COMMENT

    http://blog.csdn.net/liguihan88/article/details/3002403 无疑注释现在都被大家接受和认可,在大家编程用的IDE中都提供或有第三方插件来支持提取注释 ...

  5. 菜单之二:使用xml文件定义菜单

    参考<疯狂android讲义>2.10节 P174,参见归档project:XmlMenuDemo.zip 一般推荐使用XML文件定义菜单. 基本步骤如下: 1.定义布局文件 为简单显示原 ...

  6. DedeCms 建站随笔(一)

    站名:524社区网 代码:DedeCms织梦5.7代码(UTF-8) 服务器:Linux 问题一:火车头(熊猫)采集,登录成功之后无法获取栏目列表. 原因:1.新建栏目后没有更新栏目HTML文件,并且 ...

  7. python核心编程-习题-第二章

    PS:PDF在线地址:http://bcmi.sjtu.edu.cn/~zhaohai/ptm2012/data/Python-kernel.programming.v2.pdf 2-1  变量,pr ...

  8. nginx location的管理以及查找

    关于nginx代码解析,我师兄雕梁的博客(http://simohayha.javaeye.com)有一系列的文章可以阅读.我这里将只介绍他博客里没有关注到的或者讲述不详细的,但是我个人又认为是ngi ...

  9. shell基础——字符串处理(转载)

    Shell的字符串处理   1 得到长度   %x="abcd"  #方法一      %expr length $x      4  # 方法二      %echo ${#x} ...

  10. QT VS配置UNICODE问题

    默认情况下,使用VSQT插件 导入.pro后,会自动在项目文件里面预定义好宏UNICODE,可以把该宏去掉,以免造成其他程序,使用多字节的代码出错 去除的两个方法 1.打开Propject->P ...