一、如何提升網(wǎng)站打開速度?
很多網(wǎng)站,為了吸引訪客的注意,添加很多組件,殊不知這樣的組件越多,會(huì)越加延遲網(wǎng)站的打開速度;另外一方面,如果你的網(wǎng)站是圖片站,那么更要合理的優(yōu)化首頁代碼,有數(shù)據(jù)顯示,通過代碼瘦身可以讓頁面最高縮減百分之三十。在此,seo教程自學(xué)網(wǎng)推薦閱讀網(wǎng)站頁面速度優(yōu)化原則,衍生知識(shí)點(diǎn)。
作為seo人員,需要懂得如何精簡代碼,如何加快網(wǎng)站打開速度,即使不是技術(shù)流,也因知曉原理。在此,seo教程自學(xué)網(wǎng)總結(jié)了一部分網(wǎng)站首頁代碼優(yōu)化方法與原則,詳細(xì)如下:
1:刪除多余的社交類組件。
二、如何優(yōu)化網(wǎng)站首頁代碼:社交組件
這里需要指出,我們在網(wǎng)站中放入恰當(dāng)?shù)纳缃唤M件是建議的,但我們應(yīng)該刪除多余的社交類組件以提升網(wǎng)站加載打開速度。舉個(gè)例子:某第三方網(wǎng)站提供的分享按鈕代碼體積大約為1/2M,另外平臺(tái)的分享代碼更小,我們就可以選擇更小的;在舉個(gè)例子,網(wǎng)站上遍布各種組件,留言板,在線溝通工具,分享按鈕等,站長的初衷是好的,但更多的組件意味著很多網(wǎng)絡(luò)連接或強(qiáng)制在加載頁面之前進(jìn)行,拉低了網(wǎng)站的打開速度,另外一方面也不利于用戶體驗(yàn)。在這種情況下,我們就要優(yōu)化首頁代碼,選擇更小體積的代碼,刪除多余的組件代碼。
2:采用用戶點(diǎn)擊加載技術(shù)。
三、如何優(yōu)化網(wǎng)站首頁代碼:響應(yīng)式
如果你的網(wǎng)站是視頻站點(diǎn)或圖片站點(diǎn),是不應(yīng)該一次性加載網(wǎng)站的所有內(nèi)容的,自動(dòng)加載視頻,圖片等內(nèi)容會(huì)加載API,這會(huì)直接拉低整站的速度,建議的做法是根據(jù)用戶的需要,讓他們自由點(diǎn)擊,通過點(diǎn)擊行為加載應(yīng)該呈現(xiàn)的資源;舉個(gè)例子,如果首頁有大量圖片內(nèi)容,就可以采取滾動(dòng)式頁面,通過用戶的下拉行為加載新的頁面,這樣做有利于用戶體驗(yàn),也有利于首頁打開速度的提升。
3:使用矢量技術(shù)處理圖片。
四、如何優(yōu)化網(wǎng)站首頁代碼:矢量技術(shù)處理圖片
可縮放矢量圖形是基于可擴(kuò)展標(biāo)記語言(標(biāo)準(zhǔn)通用標(biāo)記語言的子集),用于描述二維矢量圖形的一種圖形格式。它由萬維網(wǎng)聯(lián)盟制定,是一個(gè)開放標(biāo)準(zhǔn)。
矢量技術(shù)處理圖片具備很多優(yōu)點(diǎn),如:
五、用戶可以任意縮放圖像顯示,而不會(huì)破壞圖像的清晰度、細(xì)節(jié)等;
SVG圖像中的文字獨(dú)立于圖像,文字保留可編輯和可搜尋的狀態(tài)。也不會(huì)再有字體的限制,用戶系統(tǒng)即使沒有安裝某一字體,也會(huì)看到和他們制作時(shí)完全相同的畫面。
總體來講,SVG文件比那些GIF和JPEG格式的文件要小很多,因而下載也很快。
六、SVG 圖像可被搜索、索引、腳本化或壓縮。
也就是說,使用矢量技術(shù)處理的圖片,可被搜索引擎識(shí)別,且相同情況下其文件會(huì)更小。
在此,推薦的工具有SVG edit,它可以將普通格式的文件轉(zhuǎn)換為矢量圖。
4:巧用css3代替圖片效果。
七、如何優(yōu)化網(wǎng)站首頁代碼:css3
基于css3的進(jìn)化,其已經(jīng)可以生成陰影,圓角邊框,按鈕,背景等效果,幾乎可以取代傳統(tǒng)的切片技術(shù)。在這樣的前提條件下,完全可以通過css代碼代替某些圖片效果,其優(yōu)點(diǎn)顯而易見,代碼比圖片要小得多,也會(huì)提升網(wǎng)站首頁打開速度。
另外一方面,如果使用大量圖片布局網(wǎng)站,在不同的瀏覽器下,就會(huì)形成某些視覺問題,但css3技術(shù)就不存在這些問題,它們可以好的支持各瀏覽器的兼容問題,而又不至于犧牲網(wǎng)站前端效果。
再次,seo教程自學(xué)網(wǎng)提醒:使用css3制作陰影等效果,其難度不小,需要更專業(yè)的前端技術(shù)人員才能實(shí)現(xiàn)。
5:javascript簡稱js代碼優(yōu)化。
八、如何優(yōu)化網(wǎng)站首頁代碼:js代碼優(yōu)化
眾所周知,javascript特效的使用是阻礙網(wǎng)站打開速度的一個(gè)重要因素,對于這個(gè)點(diǎn),需要著重把握和注意。前面講了css3可以取代很多圖片效果,其還有別的功能,如可以取代部分js特效效果,效果強(qiáng)大。
使用css3,取代部分js特效,有一些優(yōu)勢:
很多情況下css3代碼的特效可以直接取代js代碼。
css3代碼體諒更小,也更容易編寫。
6:用圖標(biāo)字體(icon fonts)代替首頁圖片。
如何優(yōu)化網(wǎng)站首頁代碼:圖標(biāo)字體(icon fonts)
利用字體工具把我們平時(shí) Web 上用的圖形圖標(biāo)(icons)轉(zhuǎn)換成 web fonts,就成了 icon fonts,它可以借助 CSS 的 @font-face 嵌入到網(wǎng)頁里,用以顯示 icons。因?yàn)樽煮w是矢量化圖形,它天生具有「分辨率無關(guān)」的特性,在任何分辨率和PPI下面,都可以做到好縮放,不會(huì)像傳統(tǒng)位圖,如:png,jpeg,放大后有鋸齒或模糊現(xiàn)象。
由于圖標(biāo)字體的靈活性和易用性使得圖標(biāo)字體使用越來越廣泛了,我們經(jīng)常可以看到不同的UI框架都整合了各種的圖標(biāo)字體。
除了「分辨率無關(guān)」這個(gè)大的優(yōu)點(diǎn)之外,icon fonts 還具有:
文件?。合啾葓D片幾十幾百KB的容量,icon fonts 幾乎是羽翼級(jí)輕量。
加載性能好:因?yàn)閳D標(biāo)都被打包進(jìn)一套字體內(nèi),http request 減少。這如同我們常用的 css sprites 技術(shù)。
支持CSS樣式:和普通字體一樣,你可以利用CSS來定義大小、顏色、陰影、hover狀態(tài)、透明度、漸變等等…
兼容性好:web fonts 起源很早,別說主流瀏覽器,連IE6/7都能良好支持。除了一些老的移動(dòng)端瀏覽器,如Android 2.1以下的初代瀏覽器,Opera mini 這類自限型瀏覽器。
當(dāng)然 icon fonts 也有它的不足:
樣式單一,無法針對不同分辨率來調(diào)整icon 的細(xì)節(jié),比如降低大尺寸icon 的線條粗細(xì)。
顏色單一,CSS 無法方便的去定義彩色的 icon,倒是有通過疊加組合的方式來達(dá)到彩色圖標(biāo)的目的。
移動(dòng)端瀏覽器兼容性還不夠完善,像Opera mini、Windows phone 7.0-7.8 都不能正常顯示icon fonts。
有少量的移動(dòng)設(shè)備有可能會(huì)和 icon fonts 的字符編碼沖突,導(dǎo)致icon 顯示不正常(我們自己風(fēng)車Android 版本就碰到了這個(gè)問題)。
所以 icon fonts 也并不是一套好的響應(yīng)式圖片的解決方案,當(dāng)它適宜你的應(yīng)用場景時(shí),比如:
你的網(wǎng)站是扁平化或簡約風(fēng)格,圖標(biāo)樣式單一,顏色為純色。
你的目標(biāo)用戶使用桌面瀏覽器為主,或者,
你愿意為非兼容設(shè)備做兼容hack。
icon fonts 是一個(gè)令設(shè)計(jì)師和前端工程師都心花怒放的方案。
icon fonts 的制作主要有兩條思路:
利用字體工具手動(dòng)制作
利用在線工具自動(dòng)生成
7. sprite技術(shù)優(yōu)化首頁圖片體積。
如何優(yōu)化網(wǎng)站首頁代碼:sprite(精靈)
Sprite”(精靈)這個(gè)詞在計(jì)算機(jī)圖形學(xué)中有它獨(dú)特的定義,由于游戲、視頻等畫質(zhì)越來越高,必須有一種技術(shù)可以智能的處理材質(zhì)和貼圖,并且要同時(shí)保持畫面流暢。“Sprite”就是這樣一種技術(shù),它將許多圖片組合到一個(gè)網(wǎng)格上,然后通過程序?qū)⒚總€(gè)網(wǎng)格的內(nèi)容定位到畫面上。
Sprite被定位到一副靜態(tài)圖片上,并且通過簡單的程序或硬件即可正確定位到畫面上,一幅幅圖片就像是被“變”出來的,他們并沒有單獨(dú)占用內(nèi)存,所以被取名為“Sprite精靈”。
時(shí)間進(jìn)行到2000年,Web設(shè)計(jì)向著精致、巧妙的方向發(fā)展。設(shè)計(jì)師們開始考慮使用非Javascript的方 式制作鼠標(biāo)滑過、懸停菜單的效果,這時(shí)CSS Sprite應(yīng)運(yùn)而生,它基于同上文提到的游戲Sprite同樣的原理,并且使用CSS更容易控制,很快的流行開來。
當(dāng)頁面加載時(shí),不是加載每個(gè)單獨(dú)圖片,而是一次加載整個(gè)組合圖片。這是一個(gè)了不起的改進(jìn),它大大減少了HTTP請求的次數(shù),減輕服務(wù)器壓力,同時(shí)縮短了懸停加載圖片所需要的時(shí)間延遲,使效果更流暢,不會(huì)停頓。
CSS Sprites可以用在很多場合,大型網(wǎng)站可以將許多單獨(dú)的圖片,以有機(jī)的方式組合起來,從而使其便于維護(hù)和更新。圖片之間通常會(huì)留出較大的空白,使 得圖片不會(huì)影響網(wǎng)頁的內(nèi)容。但同時(shí)CSS Sprite大多使用于較固定的像素定位中,它的彈性較差,收到定位等因素的制約。所以,你需要在可維護(hù)性vs降低負(fù)載之間權(quán)衡利弊,選擇最適合你的項(xiàng)目 的方式。
在網(wǎng)站圖片的解決方案中,CSS3應(yīng)該是選,其次是SVG和icon font,最后才是Bitmap。經(jīng)常使用的Bitmap文件應(yīng)該打包放在一個(gè)單獨(dú)的sprite中,這樣一來圖片就可以在CSS中訪問到了,像這樣:
.sprite {
width: 16px;
height: 16px;
background: url(“sprite.png”) 0 0 no-repeat;
}
.sprite.help { background-position: 0 -16px; }
.sprite.info { background-position: 0 -32px; }
.sprite.user { background-position: 0 -48px; }
換句話說我們把圖像檔案的內(nèi)容內(nèi)置在 HTML 檔案中,節(jié)省了一個(gè) HTTP 請求。
data uri的主要優(yōu)點(diǎn)是減少了http請求數(shù),調(diào)用起來比css sprite更加靈活,缺點(diǎn)是增加了客戶端的資源消耗。
在所有瀏覽器的非緩存的模式下, CSS sprite 方式比 data URI 方式快了數(shù)百微秒。但事實(shí)上 CSS Sprite 比 Data URI 方式多發(fā)送了一次連接請求,包括 TCP 慢啟動(dòng)招致所有相關(guān)的連接開銷。
緩存條件下 Android 4.2 和 iOS 6 的 CSS sprite 模式都有大概 2 倍的速度提升,只是 iOS 條件下減少了 220ms 而 Android 減少了 70ms (原生瀏覽器)。相對來說,Chrome 和 Firefox 的情況平衡得好點(diǎn),緩存和非緩存情況下只有 50% 到 60ms 左右的性能差異。
在這里我建議將 data URIs 用于非常小的資源,并且不能在 CSS 和 內(nèi)聯(lián) HTML 中多次使用它們。
在利用相關(guān)技術(shù)對網(wǎng)站首頁代碼,圖片,組件進(jìn)行瘦身處理后,就需要使用相關(guān)檢測工具對網(wǎng)站速度進(jìn)行測試。一般情況下,網(wǎng)站打開速度應(yīng)低于4秒。
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源:
創(chuàng)新互聯(lián)