提高網頁開啟速度的一些小技巧

來源:互聯網
上載者:User
互連網頻寬越來越寬,似乎讓網頁的載入速度得到了質的飛躍。其實不然,因為隨著頻寬的提高,網頁上的對象也越來越多,因此加快網頁開啟速度還是一個重要的課題。

加快網頁的開啟速度,有三個路徑,一是提高網路頻寬,二是使用者在本機做最佳化,三是網站設計者對網頁做一定的最佳化。這篇文章站在一個網站設計者的角度,分享一些最佳化網頁載入速度的小技巧。



一、最佳化圖片

幾乎沒有哪個網頁上是沒有圖片的。如果你經曆過56K貓的年代,你一定不會很喜歡有大量圖片的網站。因為載入那樣一個網頁會花費大量的時間。

即使在現在,網路頻寬有了很多的提高,56K貓逐漸淡出,最佳化圖片以加快網頁速度還是很有必要的。

最佳化圖片包括減少圖片數、降低映像品質、使用恰當的格式。

1、減少圖片數:去除不必要的圖片。

2、降低映像品質:如果不是很必要,嘗試降低映像的品質,尤其是jpg格式,降低5%的品質看起來變化不是很大,但檔案大小的變化是比較大的。

3、使用恰當的格式:請參閱下一點。

因此,在上傳圖片之前,你需要對圖片進行編輯,如果你覺得photoshop太麻煩,可以試試一些線上圖片編輯工具。懶得編輯而又想圖片有特殊的效果?可以試試用過調用javascript來實現圖片特效。

二、映像格式的選擇

一般在網頁上使用的圖片格式有三種,jpg、png、gif。三種格式的具體技術指標不是這篇文章探討的內容,我們只需要知道在什麼時候應該使用什麼格式,以減少網頁的載入時間。

1、JPG:一般用於展示風景、人物、藝術照的攝影作品。有時也用在電腦截屏上。

2、GIF:提供的顏色較少,可用在一些對顏色要求不高的地方,比如網站logo、按鈕、表情等等。當然,gif的一個重要的應用是動畫圖片。就像用Lunapic製作的倒映圖片。

3、PNG:PNG格式能提供透明背景,是一種專為網頁展示而發明的圖片格式。一般用於需要背景透明顯示或對映像品質要求較高的網頁上。

三、最佳化CSS

CSS疊層樣式表讓網頁載入起來更高效,瀏覽體驗也得到提高。有了CSS,表格版面配置的方式可以退休了。

但有時我們在寫CSS的時候會使用了一些比較羅嗦的語句,比如這句:



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>


簡化CSS能去除冗餘的屬性,提高運行效率。如果你寫好CSS後懶得去做簡化,你可以使用一些線上的簡化CSS工具,比如CleanCSS。

四、網址後加斜杠

有些網址,比如"www.kenengba.com/220",當伺服器收到這樣一個地址請求的時候,它需要花費時間去確定這個地址的檔案類型。如果220是一個目錄,不妨在網址後多加一個斜杠,讓其變成www.kenengba.com/220/,這樣伺服器就能一目瞭然地知道要訪問該目錄下的index或default檔案,從而節省了載入時間。

五、標明高度和寬度

這點很重要,但很多人由於懶惰或其它原因,總是將其忽視。當你在網頁上添加圖片或表格時,你應該指定它們的高度和寬度,也就是height和width參數。如果瀏覽器沒有找到這兩個參數,它需要一邊下載圖片一邊計算大小,如果圖片很多,瀏覽器需要不斷地調整頁面。這不但影響速度,也影響瀏覽體驗。

下面是一個比較友好的圖片代碼:


<img id="moon" height="200" width="450" src="http://www.kenengba.com/moon.png" alt="moon image" />


當瀏覽器知道了高度和寬度參數後,即使圖片暫時無法顯示,頁面上也會騰出圖片的空位,然後繼續載入後面的內容。從而載入時間快了,瀏覽體驗也更好了。

六、減少http請求

當瀏覽者開啟某個網頁,瀏覽器會發出很多個物件請求(映像、指令碼等等),視乎網路延時情況,每個對象載入都會有所延遲。如果網頁上對象很多,這可以需要花費大量的時間。

因此,要為http請求減負。如何減負?

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

2、將臨近的兩張圖片合成一張。

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請求。

七、其它小技巧(譯者添加)

1、去除不必要附加元件。

2、如果在網頁上嵌入了其它網站的widget,如果有選擇餘地,一定要選擇速度快的。

3、盡量用圖片代替flash,這對SEO也有好處。

4、有些內容可以靜態化就將其靜態化,以減少伺服器的負擔。

5、統計代碼放在頁尾。



相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。