制作的HTML5滑屏頁面速度很慢,找了一些文章,希望解決問題。
一、
1、控制jpg圖片的質量
由於質量高的jpg格式圖片比較清晰,色彩更鮮艷,不少人就用這種圖片來美化header,其實這對速度的影響是很大的,因為打開一個頁面首先加載的就是header,header加載時間太長的話,很容易使第一次來的訪客反感,還有一種情況是頁面上的小圖標,有些站長過於追求美觀,於是頁面上的小圖標也用高質量的圖片來做,這是很沒必要的。
2、盡量使用gif格式
jpg格式在在展示色彩豐富的大圖片是效果很好,但做網頁圖標的話,gif才是最好的格式。因為在展示像素級的細節是,gif的效果比jpg好了不知多少倍,你可以嘗試一下,截取一幅含有12px或14px文字的圖,分別保存為256色的gif和質量為80的jpg,對比一下文字的顯示效果,gif肯定比jpg清晰很多,而體積卻小了不少。所以,在制作小圖標或帶有小字體的圖片時,優先使用gif格式,這里還有說到一個顏色數的問題,gif格式能顯示的顏色數量最多為256色,其實對不包含大量色彩漸變的圖片來說,已經是非常足夠了,因此,在制作顏色比較少的gif時,嘗試一下降低顏色數,只要效果能過得去就行了。
3、如何插入裝飾性圖片
這里要講的不是簡單的用img標簽插入圖像,用這種方法插入頁面小圖標等裝飾性圖片弊端是非常大的。首先,用img標簽插入的圖片不能通過簡單的方法實現變換效果,在這里,美化效果要打個折扣,其次,用img插入的圖片,如果圖片不在瀏覽器緩存里,而且不重復出現的話,會大大增加http請求數。因為img標簽理論上是出現一次載入一次的。其三,用img標簽不利於調整圖片位置,如果一個圖片,需要在header靠右和footer靠左這兩個位置出現兩次,你就需要為它寫兩次css。其四,用img標簽插入圖片不利於整合,整合圖片可以大大減少http請求數,到底整合圖片有什么技巧呢?看下節。
4、頁面背景圖片的處理方法
很多人喜歡用圖片做頁面元素的hover變換效果,但是卻沒有把相關的圖片整合,導致一些變換效果有事會因為圖片載入失敗而失色。我們可以把針對某個效果的圖片都整合成一個文件,在css里用background-position屬性調整圖片位置。這種做法的好處是背景只需要一次http請求,圖片可以重復調用,也有利於圖片變換。看到這里,你知道裝飾性圖片應該怎么插入了嗎?對,用css。
5、插圖盡量使用外鏈
由於服務器性能的限制,一般非獨立主機都會限制單ip的http請求數,如果一個頁面里http請求太多的話,頁面往往要等很久才能完全載入。特別是圖片,如果太長時間不能加載的話,瀏覽器就會斷開與服務器的鏈接,這是就需要在點擊一下顯示圖片才能顯示出來,比較好的支持外鏈的相冊有picasa、flickr和國內的yupoo等。這樣做不但能減輕服務器壓力,節約流量,更重要的是,我不相信大部分站長用的服務器比那些專業的在線相冊快。
二、
來源:知乎
二是異步加載。頁面先顯示,圖片則下載完成(或命中)后才顯示。(其中會有一些緩存策略,不表)
三是分頁請求。即按需請求,一次只請求當前頁面中需要出現的圖片,當頁面發生滾動或者切換時,再請求剩余圖片。
來源:知乎
- 異步加載
- 用data:image/gif;base64直接嵌入到css文件里來減少http請求
- 按照屏幕尺寸按需加載響應的圖片尺寸 (可用 css media query之類)
- 壓縮圖片質量,通過添加一層紋理蒙版來使之不那么刺目
- 換更快的服務器或是CDN
三、25種提高網頁加載速度的方法和技巧(轉)
延遲加載、分配加載