1、”当用表格定位网页,当网页被打开时,只有当表格内所有元素被加载完后,表格里内容才会显示,因此,不能把所有内容放在一个表格里,这样超级影响网页打开速度“不推荐表格布局的原因不是在这里,css布局代替table布局是基于内容样式分离、标签语义、代码可读性等多方面考虑的。
2、"是否要id=1下的所有div加载完后,整个div才会显示出来?"这个我真不明白是什么意思,浏览器渲染网页先构建dom树,然后加载内容。多层div嵌套显然会影响加载速度(虽然相比请求加载资源相比微不足道),所以我们一般要避免。
3、“另外嵌套层数太多,是否会影响到被搜索引擎搜到的机率?”这个完全不会,搜索引擎在处理数据是首先要过滤标签;
4、“div被吹的很强大”这个?div+css布局和table布局一样是极端情况,是不好的。div并不强大。要根据语义用。
加载速度是这个意思:
比如一个表格里有图,有程序,有文字,假如打开网页其中的图加载很慢,那么这个表格的其它元素,比如文字,程序等都不会显示,直到那张图完整加载完后,这个表格才全部显示出来。
那么div1里嵌套了div2,div2里面又嵌套div3,假如div3的一张图片加载很慢,这时div2和div1的元素是否会独立显示出来?还是要等到div3里的图片完成加载后,div1里的全部内容才能显示出来?
这个问题基本上是浏览器找到你的图片链接,已经解析了标签,最后只剩下下载!它会接着往下解析,并不会影响其他内容的展示,在网速过慢的时候,你会发现图片会一节一节的显示,而其他地方的文字全部显示,并不影响!接上次你的问题,div1和div2的内容会独立显示出来。浏览器解析只是解析标签,对于div来说只要保证路径和标签的正确和完整,就没有问题,打开的浏览器在自己的标准下显示你定义的样式,网速决定你显示的速度!总的来说,你的结构简洁,浏览器理解解析的快一些,复杂慢一些!
div 是块元素,主要用于网页布局,只要合理利用table和ul元素,不会影响页面收录,另,作为网站设计者,首先应该考虑的就是哪个div作用于哪一块,否则,table怎么会被取代?
加一句,你应该有这样体验,就是同一个页面,table布局和div布局所用到的代码冗余会更多。
最后,div不是被吹大的。
最最后,浏览器在遇到双标签时,就会显示里面的内容,所以,div也是如此。并不需要所用的div都加载完才显示。
楼主,知道问人还不如亲测?你弄一张很大很大的力图片(比如有3M),嵌套在最里层div,然后在外层div写上汉字或弄些不大的东西,然后上传到web空间,打开看看是先显示文字,还是先显示图片,还是什么的,就可以下结论了啊。
这种嵌套对搜索引擎的影响。现在并没有证据表明存在。有时候为了布需要。是没办法必免这样的结构。当然,原则上是建议尽量减少不必要的嵌套。不代码可读性。逻辑性等方面来看。合理的结构好处非常明显的。