提高页面显示速度的秘技

原创 2005年05月28日 10:28:00
在安排Web页面的布局时,最常用的方法之一是用HTML表格界定页面的结构。例如,假设Web页面由顶端的导航条和它下面的两栏(列)构成——左边的列是一个导航条,右边的列是实际安置内容的区域。对于这样一个页面,我们可以用一个两行、两列的大表格进行布局:在第一行中,合并两个列然后放上顶端导航表格;在第二个行中,左边的列放上一个显示导航按钮的表格,右边的列再用一个表格显示页面的实际内容。用这种表格嵌套表格的方法进行布局可以得到非常好的效果。

  要制作出这种页面,我们可以使用如下HTML代码:

< TABLE BORDER="0" > < TR > < TD COLSPAN="2" >< !-- 顶端导航条的内容 -- >< /TD > < /TR > < TR > < TD ALIGN="LEFT" VALIGN="TOP" >< !-- 左边导航条的内容 -- >< /TD > < TD ALIGN="LEFT" VALIGN="TOP" >< !-- 页面内容区域 -- >< /TD > < /TR > < /TABLE >



  如果浏览器发现页面中有一个TABLE标记,在接收到对应的结束标记< /TABLE >之前它不会显示这个表格。因此,如果整个页面都放入了一个大表格中,在浏览器下载这个大表格的< /TABLE >标记之前整个页面都不会显示。当显示内容非常多的页面时(例如,搜索结果或者电子商务网站上的产品目录),表格的延迟显示会导致整个页面显示的停顿。

  为了避免出现这种情况,我们应该把页面划分成多个较小且独立的表格区域。这样的话,每个表格的HTML代码下载之后浏览器就可以立即显示它。对于浏览者来说,页面将在屏幕上一部分、一部分地逐渐显示出来。而且更重要的是,这种页面在屏幕上开始显示的速度要比前面等待整个页面下载才显示的方法快得多。

  对于前面介绍的例子,我们不是使用单个大表格进行页面布局,而是使用三个独立的表格:第一个表格显示页面顶端的导航条,使其具有足够的宽度显示页面内容并完整地给出其< TABLE >< /TABLE >标记对;在第一个表格的左下位置安排第二个表格,使这个表格向左对齐;最后一个表格位于第二个表格的右边,用于放置页面内容。由于现在每一部分都是一个独立的表格,浏览器只要下载了任一部分的代码就会立即显示它。因此,页面顶端和左面的导航条将比页面其余部分更快地显示出来。这就避免了让浏览者长时间地在空白页面前等待,而是给了他这样一种印象:页面已经开始下载,整个页面将立刻出现在屏幕上。

  修改后的布局代码如下所示:

< TABLE BORDER="0" WIDTH="100%" > < TR > < TD ALIGN="CENTER" VALIGN="TOP" >< !-- 顶端导航条的内容 -- >< /TD > < /TR > < /TABLE > < TABLE BORDER="0" ALIGN="LEFT" > < TR > < TD ALIGN="LEFT" VALIGN="TOP" >< !-- 左边导航条的内容 -- >< /TD > < /TR > < /TABLE > < TABLE BORDER="0" > < TR > < TD ALIGN="LEFT" VALIGN="TOP" >< !-- 页面内容区域 -- >< /TD > < /TR > < /TABLE >

正如尽可能早地关闭TABLE标记使得浏览器能够快速地显示出表格中的数据,还有另外两个标记也同样可以用这种方法提高显示速度,这两个标记就是用于制作列表框的< OPTION >标记和用于制作无序列表的< LI >标记。

  ASP程序员常常要访问数据库获取数据然后用< OPTION >标记构造列表框。只要简单地改动一下代码关闭< OPTION >标记,就可以让浏览器显示页面的速度加快。

  例如,原先使用下面的代码:

Do while not objRS.EOF strOptionList = strOptionList & "< OPTION VALUE=""" & objRS("ID") & _ """ >" & objRS("ProductName") objRS.MoveNext Loop Response.Write "< SELECT SIZE=""1"" >" & strOptionList & "< /SELECT >"

  现在只需改动一行代码:

Do while not objRS.EOF strOptionList = strOptionList & "< OPTION VALUE=""" & objRS("ID") & _ """ >" & objRS("ProductName") & "< /OPTION >" objRS.MoveNext Loop Response.Write "< SELECT SIZE=""1"" >" & strOptionList & ""

  如果原来使用的代码如下:

< UL > < LI >苹果 < LI >桔子 < LI >香蕉 < /UL >

  那么现在改用:

< UL > < LI >苹果< /LI > < LI >桔子< /LI > < LI >香蕉< /LI > < /UL >

  经过这些改动之后,浏览器显示页面的速度将会更快。


提高HTML5应用和网站性能的50条秘技

Jatinder Mann是微软Internet Explorer产品的一名项目经理,在BUILD 2012大会上,他做了题为“提高HTML5应用和网站性能的50条秘技(50 performa...

利用Ajax提高页面载入速度

  • 2012年05月18日 13:22
  • 177KB
  • 下载

如何优化网站页面提高网页的加载速度

网站要想加载快无非就是减少http请求次数,下面说一下具体做法: 1:字符集声明 如果部分未定义字符集,将增加页面渲染次数,速度减慢。 2:Meta信息完善程度 建议网站meta信息填写完整 ...
  • Candy_3
  • Candy_3
  • 2014年10月31日 11:25
  • 1467

如何优化网站页面提高网页的加载速度

1、字符集声明 如果部分未定义字符集,将增加页面渲染次数,速度减慢。 2、Meta信息完善程度 建议网站meta信息填写完整 3、合并域名 ...
  • Enarm
  • Enarm
  • 2016年02月28日 16:31
  • 314

提高网站页面加载速度的黄金守则

Yahoo!的Exceptional Performance团队为改善Web性能带来最佳实践。他们为此进行了一系列的实验、开发了各种工具、写了大量的文章和博客并在各种会议上参与探讨。最佳实践的核心就是...

android开发之提高应用启动速度_splash页面瞬间响应_避免APP启动闪白屏

Application和Activity中的onCreate都进行了优化,基本没有耗时操作,但是启动应用之后还是会闪现一下白色背景,然后才进入Splash页面,对比了一下QQ、微信、微博等客户端,点击...

在windows、linux中开启nginx的Gzip压缩大大提高页面、图片加载速度

为了降低tomcat服务的压力,把页面上的图片采用windows版的nginx进行加载,由于有些图片比较大,加载特别的慢,所以在nginx中打开了gzip的压缩功能。加载图片的速度快了很多。通过站长工...

提高页面加载速度支一招

ControlJS官网:http://stevesouders.com/controljs/ //下面是转自http://www.cnblogs.com/tiwlin/archive/2011/12...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:提高页面显示速度的秘技
举报原因:
原因补充:

(最多只允许输入30个字)