搜索
查看: 10603|回复: 1

网站打开速度慢的解决办法:一些优化网页加载速度的小技巧

[复制链接]
发表于 2010-7-21 21:55:33 | 显示全部楼层 |阅读模式

一、优化图片
几乎没有哪个网页上是没有图片的。如果你经历过56K猫的年代,你一定不会很喜欢有大量图片的网站。因为加载那样一个网页会花费大量的时间。
即使在现在,网络带宽有了很多的提高,56K猫逐渐淡出,优化图片以加快网页速度还是很有必要的。
优化图片包括减少图片数、降低图像质量、使用恰当的格式。
1、减少图片数:去除不必要的图片。
2、降低图像质量:如果不是很必要,尝试降低图像的质量,尤其是jpg格式,降低5%的质量看起来变化不是很大,但文大小的变化是比较大的。
3、常识使用脚本文件代替效果:
比如一些web2.0的样式,如果使用ps制作,每个图片基本会增加%5-%25的大小成本.
相反,使用javascript代码来实现效果,仅仅只增加几个字节.

6 v3 m% R5 b3 Y1 m1 v

二、图像格式的选择
一般在网页上使用的图片格式有三种,jpg、png、gif。三种格式的具体技术指标不是这篇文章探讨的内容,我们只需要知道在什么时候应该使用什么格式,以减少网页的加载时间。
1、JPG:一般用于展示风景、人物、艺术照的摄影作品。有时也用在电脑截屏上。
2、GIF:提供的颜色较少,可用在一些对颜色要求不高的地方,比如网站logo、按钮、表情等等。当然,gif的一个重要的应用是动画图片。
3、PNG:PNG格式能提供透明背景,是一种专为网页展示而发明的图片格式。一般用于需要背景透明显示或对图像质量要求较高的网页上。

# c- d" r* Y9 s; _$ p

三、优化CSS
CSS叠层样式表让网页加载起来更高效,浏览体验也得到提高。有了CSS,表格布局的方式可以退休了。
但有时我们在写CSS的时候会使用了一些比较罗嗦的语句,比如这句:

# P; o$ V7 s- M9 }: H

复制内容到剪贴板
代码:
margin-top: 10px;
margin-right: 20px;
margin-bottom: 10px;
margin-left: 20px;
你可以将它简化为:
margin: 10px 20px 10px 20px;
又或者这句:
<p class="decorated">A paragraph of decorated text</p>
<p class="decorated">Second paragraph</p>
<p class="decorated">Third paragraph</p>
<p class="decorated">Forth paragraph</p>
可以用div来包含:
<div class="decorated">
<p>A paragraph of decorated text</p>
<p>Second paragraph</p>
<p>Third paragraph</p>
<p>Forth paragraph</p>
</div>
四、网址后加斜杠

" x' X6 |2 }; c0 H/ ^

有些网址,比如http://cheng-4.cn/512 当服务器收到这样一个地址请求的时候,它需要花费时间去确定这个地址的文件类型。如果220是一个目录,不妨在网址后多加一个斜杠,让其变成http://cheng-4.cn/512/,这样服务器就能一目了然地知道要访问该目录下的index或default文件,从而节省了加载时间。

' H. V* A/ ]. Q2 d& s$ _; Z2 W0 a2 m

五、标明高度和宽度

* i9 Y O) h, m$ ~$ a

这点很重要,但很多人由于懒惰或其它原因,总是将其忽视。当你在网页上添加图片或表格时,你应该指定它们的高度和宽度,也就是height和width参数。如果浏览器没有找到这两个参数,它需要一边下载图片一边计算大小,如果图片很多,浏览器需要不断地调整页面。这不但影响速度,也影响浏览体验。

/ B7 W+ u6 \) J8 {, f$ Y

下面是一个比较友好的图片代码:

' S& W$ b2 V, ~ @; t

复制内容到剪贴板
代码:
<img id="img" height="200" width="450" src="/Article/UploadFiles/200805/20080521125828444.gif" alt="banner" />
当浏览器知道了高度和宽度参数后,即使图片暂时无法显示,页面上也会腾出图片的空位,然后继续加载后面的内容。从而加载时间快了,浏览体验也更好了

# r) G! u! D6 D1 n

六、减少http请求

% p0 _/ |3 ~: I

当浏览者打开某个网页,浏览器会发出很多对象请求(图像、脚本等等),视乎网络延时情况,每个对象加载都会有所延迟。如果网页上对象很多,这可以需要花费大量的时间。

8 I6 w5 B8 J! e# \3 _% v

因此,要为http请求减负。如何减负?

* Y% d& H S6 o6 `, g

1、去除一些不必要的对象。

& R( f2 c5 D9 P: A6 q7 o

2、将临近的两张图片合成一张。

, E2 B6 m) d5 N

3、合并CSS文件
看看下面这段代码,需要加载三个CSS文件:
<link rel="stylesheet" type="text/css" href="/body.css" />
<link rel="stylesheet" type="text/css" href="/side.css" />
<link rel="stylesheet" type="text/css" href="/footer.css" />
我们可以将其合成一个:
<link rel="stylesheet" type="text/css" href="/style.css" />
从而减少http请求。

~: ]& |, W8 G

七、其它小技巧

6 S: b6 F# ^. o* c4 P

1、去除不必要加载项。
2、如果在网页上嵌入了其它网站的widget,如果有选择余地,一定要选择速度快的。
3、尽量用图片代替flash,这对SEO也有好处。
4、有些内容可以静态化就将其静态化,以减少服务器的负担。
5、统计代码放在页尾(或者使用延迟加载)。

回复

使用道具 举报

游客  发表于 2011-7-10 03:46:10
购456-我的购物主页,淘宝网,淘宝网热销,淘宝网人气,热销商品,热卖商品,特价商品,人气商品。购456-我的购物主页,为您推荐来自淘宝网千万件热销人气商品,让您轻松淘到适合您的宝贝!淘宝网购物,本站是您最佳之选: http://www.gou456.com/
回复 支持 反对

使用道具

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

热议作品
精华帖子排行
精彩推荐

虾皮社区,成立十年了!

站长自己也搞不懂想做个什么,反正就是一直在努力的做!

Copyright © 2007-2019 xp6.org Powered by Discuz

QQ|Archiver|手机版|小黑屋|虾皮社区 鲁公网安备 37021102000261号 |网站地图
返回顶部 返回列表