觸屏版
全國(guó)服務(wù)熱線:0571-87205688
登錄
注冊(cè)
客戶中心
關(guān)注云客
作為一名網(wǎng)站SEO優(yōu)化人員,對(duì)于網(wǎng)站代碼必須要有所了解,這是做網(wǎng)站優(yōu)化的必備要素之一,網(wǎng)站推廣要想獲得好的績(jī)效,源代碼是很關(guān)鍵,挑剔的搜索引擎蜘蛛對(duì)于簡(jiǎn)潔的網(wǎng)站代碼是情有獨(dú)鐘的,這就需要我們對(duì)網(wǎng)站代碼進(jìn)行精簡(jiǎn)及優(yōu)化。
網(wǎng)頁(yè)的精簡(jiǎn)說(shuō)白了就是網(wǎng)站代碼優(yōu)化,去掉網(wǎng)站多余的代碼,以減少網(wǎng)站的大小,提高網(wǎng)站的加載速度和用戶體驗(yàn)。
網(wǎng)站代碼優(yōu)化是站長(zhǎng)必須要掌握的基本技能,這關(guān)系到搜索引擎蜘蛛是否會(huì)對(duì)你的網(wǎng)站感興趣,冗長(zhǎng)無(wú)用的代碼會(huì)讓蜘蛛很難理解,增加蜘蛛抓取網(wǎng)站的難度,同時(shí),網(wǎng)頁(yè)的精簡(jiǎn)還關(guān)系到網(wǎng)站的加載速度,對(duì)用戶體驗(yàn)至關(guān)重要。
1、head部分代碼規(guī)范化
HEAD部分代碼是搜索引擎爬行網(wǎng)站的入口部分,現(xiàn)在很多網(wǎng)站的頭部代碼都相當(dāng)統(tǒng)一化,刻板效應(yīng)明顯十足,這樣的網(wǎng)站代碼是像模板框架一樣是不被spider喜歡的,而我們要做的就是將網(wǎng)站的代碼規(guī)范化,建立起網(wǎng)站獨(dú)一無(wú)二的head部分,讓搜索引擎有新鮮感,這樣才能夠吸引spider爬行。
2、使用div+css布局網(wǎng)頁(yè)
雖然現(xiàn)在div+css已經(jīng)很成熟了,但是很多網(wǎng)頁(yè)設(shè)計(jì)者可能考慮到網(wǎng)頁(yè)的兼容性以及布局的簡(jiǎn)易性還是使用老式的table布局,雖然table布局很方便,但是其弊端也是顯而易見(jiàn)的,那就是會(huì)大大增加網(wǎng)頁(yè)的大小,尤其是多層表格的嵌套,這種布局不僅會(huì)提升體積,同時(shí)如果嵌套數(shù)太多的話就會(huì)影響到搜索引擎的爬行,影響到站點(diǎn)的收錄。
另外,一些網(wǎng)站會(huì)使用外部文件,將css和js放在外部文件中,頁(yè)面html中只要放一樣代碼調(diào)用就可以了,有時(shí)候我們?nèi)ゲ榭吹囊恍┰次募a,會(huì)看到很多css代碼以及javasript代碼,將javascript放置在網(wǎng)站頁(yè)面的html文件中的最前面,而真正能用到得一些文字部分這被推倒了html的后面,筆者認(rèn)為這種代碼都需要精簡(jiǎn)。
3、CSS優(yōu)化
CSS是頁(yè)面效果呈現(xiàn)中非常重要的組成部分,它包括顏色、大小尺寸、背景和字體等。寫CSS很簡(jiǎn)單很容易,但是要想寫出精煉的CSS代碼還是有很多技巧的。
(1)、CSS位置
CSS說(shuō)明如果出現(xiàn)在網(wǎng)站之后,頁(yè)面需要重新渲染,打開(kāi)速度受到影響,所有css定義代碼的位置要放到網(wǎng)站之前。
(2)、csssprite技術(shù)
網(wǎng)站上的一些圖片可以采用csssprite技術(shù)進(jìn)行合并,減少加載請(qǐng)求次數(shù),從而提高網(wǎng)頁(yè)的加載速度。
(3)、CSS代碼優(yōu)化
通過(guò)對(duì)css代碼屬性的簡(jiǎn)寫、移除多余的結(jié)構(gòu)(frameworks)和重設(shè)(resets)等一系列的方法和技巧來(lái)簡(jiǎn)化css代碼,減小css文件的大小。
(4)、盡量不要使用內(nèi)嵌式CSS
內(nèi)嵌式CSS分為兩種,一是在head區(qū)域的普通內(nèi)嵌式;二是在標(biāo)簽內(nèi)出現(xiàn)的行內(nèi)內(nèi)嵌式CSS,無(wú)論是何種內(nèi)嵌CSS方式結(jié)果都會(huì)提升頁(yè)面的體積,對(duì)此,我們可以盡量使用外調(diào)式的CSS來(lái)為站點(diǎn)頁(yè)面的體積瘦身。
Google建議:
(1)如果外部CSS資源較小,您可以直接將這些內(nèi)容插入到HTML文檔中,這稱為“內(nèi)嵌”。通過(guò)這種方式內(nèi)嵌較小CSS資源,瀏覽器可以繼續(xù)呈現(xiàn)網(wǎng)頁(yè)。如果CSS文件較大,您需要識(shí)別和內(nèi)嵌呈現(xiàn)首屏內(nèi)容所需的CSS,并暫緩加載其余樣式,直到首屏內(nèi)容顯示之后為止。
(2)請(qǐng)勿內(nèi)嵌較大數(shù)據(jù)URI
在CSS文件中內(nèi)嵌數(shù)據(jù)URI時(shí),請(qǐng)務(wù)必慎重。您可以在CSS中選擇使用較小數(shù)據(jù)URI,因?yàn)閮?nèi)嵌較大數(shù)據(jù)URI會(huì)導(dǎo)致首屏CSS變大,進(jìn)而延緩網(wǎng)頁(yè)呈現(xiàn)時(shí)間。
(3)請(qǐng)勿內(nèi)嵌CSS屬性
應(yīng)盡量避免在HTML元素(例如,<pstyle=...>)中內(nèi)嵌CSS屬性,因?yàn)檫@經(jīng)常會(huì)導(dǎo)致出現(xiàn)多余的重復(fù)代碼。此外,內(nèi)容安全政策(CSP)會(huì)在默認(rèn)情況下阻止在HTML元素上內(nèi)嵌CSS。
4、JS優(yōu)化
JS優(yōu)化與其他語(yǔ)言的優(yōu)化也仍然有相同之處,JS優(yōu)化的關(guān)鍵,仍然是要把精力放在最關(guān)鍵的地方,也就是瓶頸上,一般來(lái)說(shuō),瓶頸總是出現(xiàn)在大規(guī)模循環(huán)的地方,這倒不是說(shuō)循環(huán)本身有性能問(wèn)題,而是循環(huán)會(huì)迅速放大可能存在的性能問(wèn)題。
(1)、JS位置
網(wǎng)頁(yè)代碼中對(duì)js進(jìn)行優(yōu)化的時(shí)候,筆者建議將JS放在頁(yè)面最后,這樣可以加快頁(yè)面打開(kāi)速度。
(2)、合并JS
合并相同域名下的js,通過(guò)減少網(wǎng)絡(luò)連接次數(shù)從而提高網(wǎng)頁(yè)的打開(kāi)速度。
(3)、LazyLoad(延遲加載)技術(shù)
LazyLoad是一個(gè)用JavaScript編寫的jQuery插件,它可以延遲加載長(zhǎng)頁(yè)面中的圖片,在瀏覽器可視區(qū)域外的圖片不會(huì)被載入,直到用戶將頁(yè)面滾動(dòng)到它們所在的位置。
(4)、JS代碼外部的調(diào)用
我們知道當(dāng)前的搜索引擎還是不能夠識(shí)別JS代碼的,倘若在網(wǎng)站中出現(xiàn)大批量的js代碼網(wǎng)站在收錄上就會(huì)出現(xiàn)困難,而我們要做的就是將用到Javascript代碼用外部調(diào)用的形式放在網(wǎng)站中,這樣可以簡(jiǎn)化搜索引擎的工作,也不會(huì)在無(wú)形中衍生出無(wú)效代碼累及網(wǎng)站。
不僅如此,筆者覺(jué)得可以采用外部調(diào)用的還有css代碼,建站之初可以將網(wǎng)站的文字、顏色定義在css代碼文件中,盡量不要在頁(yè)面代碼內(nèi)出現(xiàn)過(guò)多的樣式代碼。
(5)、降低頁(yè)面對(duì)于JS的依賴性
現(xiàn)在來(lái)說(shuō),JS對(duì)于搜索引擎并不不友好,雖然有消息稱搜索引擎不會(huì)對(duì)JS有厭惡的情緒,但是多一事不如少一事,雖然JS可以制作出很多的效果,但是網(wǎng)頁(yè)中大量的JS將影響蜘蛛對(duì)頁(yè)面的抓取和增加網(wǎng)頁(yè)體積,尤其是頁(yè)面的關(guān)鍵位置如導(dǎo)航欄,盡量采用DIV+CSS的設(shè)計(jì)方法。
(6)內(nèi)嵌較小的JavaScript
如果外部腳本較小,您可以直接將它們添加到HTML文檔。通過(guò)這種方式內(nèi)嵌較小文件可讓瀏覽器繼續(xù)呈現(xiàn)網(wǎng)頁(yè)。例如,如果HTML文檔如下所示:
Hello,world!
資源small.js如下所示:
/*contentsofasmallJavaScriptfile*/
那么,您即可按如下這樣內(nèi)嵌腳本:
/*contentsofasmallJavaScriptfile*/
Hello,world!
這樣,您就可以將small.js內(nèi)嵌在HTML文檔中,從而消除對(duì)它的外部請(qǐng)求。
5、table標(biāo)簽的縮減(基本上已經(jīng)被淘汰)
table標(biāo)簽是現(xiàn)在大多數(shù)上線網(wǎng)站中最為常見(jiàn)的代碼形式,原因根本在于table在建立網(wǎng)站時(shí)比較快捷,但是這也就影響了網(wǎng)站的后期優(yōu)化。
相對(duì)于div+css布局的精簡(jiǎn)代碼網(wǎng)站來(lái)說(shuō),它的占位比較大,所以,在建站時(shí)候,盡量是少用表格,即便是要使用表格時(shí),嵌套式表格也要盡量少用,以免產(chǎn)生冗雜代碼。
那么,現(xiàn)在的網(wǎng)站用什么做呢?很多程序員第一想法就是采用CSS去做,采用CSS去排版,這種做法呢,就使頁(yè)面中的表格大大的降低了,但在筆者看來(lái),網(wǎng)站也不能沒(méi)有表格,有些事必須使用到得,使用表格本身沒(méi)什么,但是有很多網(wǎng)站都采用嵌套表格,一般這樣的表格形式會(huì)給網(wǎng)站產(chǎn)生大量的垃圾代碼,并且這些垃圾代碼都是沒(méi)有任何用處的代碼,這一類代碼也是我們網(wǎng)站需要精簡(jiǎn)的代碼之一。
6、代碼注釋省略
很多程序人員在編寫代碼是都習(xí)慣在別人看不懂的地方給出一段注釋,這些代碼往往是為了幾個(gè)程序員之間的協(xié)同工作,對(duì)于外人以及搜索引擎來(lái)說(shuō)沒(méi)有任何用處,相反還會(huì)給搜索引擎蜘蛛帶來(lái)一定的困擾。
打開(kāi)頁(yè)面代碼我們經(jīng)常會(huì)看到一些注釋代碼,這是程序員為了表明代碼意義而做的注釋,其實(shí)這些打開(kāi)不必,因?yàn)閷?duì)于搜索引擎而言,它們是不存在任何意義的,只是會(huì)增加了頁(yè)面代碼的容量,這樣對(duì)于網(wǎng)站不會(huì)有什么利處,不如直接省略。
7、清除頁(yè)面中多余的代碼
有的網(wǎng)站以為制作者的代碼書寫習(xí)慣問(wèn)題,頁(yè)面會(huì)有很多空格代碼,比如:空格代碼、style和font重復(fù)定義的代碼,不要小看這些體積很小的代碼,積攢多了,也會(huì)使我們的網(wǎng)站異常的臃腫。
很多網(wǎng)站都是采用的DIV+CSS,在CSS中定義了文字的字體,顏色,以及頁(yè)面的排版,但是在網(wǎng)站的其他地方還用了以style以及font來(lái)再次定義字體字體,這些代碼完全沒(méi)有必要重復(fù)定義,屬于可以精簡(jiǎn)的代碼。
8、將html控制方式轉(zhuǎn)換為CSS控制
很多網(wǎng)頁(yè)設(shè)計(jì)者習(xí)慣在標(biāo)簽內(nèi)對(duì)內(nèi)容進(jìn)行控制,比如img標(biāo)簽里通過(guò)width和height來(lái)控制圖片的大小,盡量將這些代碼轉(zhuǎn)換成外調(diào)式的CSS,使網(wǎng)頁(yè)代碼更加的瘦身。
9、緩存靜態(tài)資源
通過(guò)設(shè)置瀏覽器緩存,將css、js等不太經(jīng)常更新的文件緩存在瀏覽器端,這樣同一訪客再次訪問(wèn)你的網(wǎng)站的時(shí)候,瀏覽器就可以從瀏覽器的緩存中獲取css、js等,而不必每次都從你的服務(wù)器讀取,這樣在一定程度上加快了網(wǎng)站的打開(kāi)速度,又可以節(jié)約你的服務(wù)器流量。
Google建議:
為您的服務(wù)器啟用瀏覽器緩存。靜態(tài)資源應(yīng)該至少有一周的緩存有效期。廣告或小部件這類的第三方資源也應(yīng)該至少有一天的緩存有效期。對(duì)于所有可緩存資源,我們建議您進(jìn)行以下設(shè)置:
(1)將Expires設(shè)為將來(lái)日期,至少為一周,最多為一年(我們傾向于設(shè)置Expires,而不設(shè)置Cache-Control:max-age,因?yàn)榍罢呤苤С值姆秶鼮閺V泛)。請(qǐng)勿將其設(shè)為超過(guò)一年的將來(lái)日期,因?yàn)檫@樣就違反了RFC準(zhǔn)則。
(2)如果您知道資源將具體在何時(shí)發(fā)生變化,則可以設(shè)置較短的過(guò)期日期。然而,如果您認(rèn)為資源“可能將要發(fā)生變化”,但又不知道具體時(shí)間,則應(yīng)設(shè)置較長(zhǎng)的過(guò)期日期,并使用網(wǎng)址指紋。
10、網(wǎng)頁(yè)壓縮技術(shù)
對(duì)于網(wǎng)頁(yè)壓縮而言,相信各位站長(zhǎng)都比較熟悉,主要是啟用服務(wù)器Gzip,對(duì)頁(yè)面Gzip壓縮,減少元素的體積,從而減少數(shù)據(jù)的傳輸,進(jìn)而提高網(wǎng)頁(yè)的加載速度,這個(gè)功能需要你的服務(wù)器的支持,GZIP壓縮一般能對(duì)網(wǎng)頁(yè)進(jìn)行30%-80%的壓縮,是最重要的一種優(yōu)化效果。
總之,通過(guò)代碼優(yōu)化來(lái)起到網(wǎng)站優(yōu)化作用的方式還有很多,在這只是隨意的說(shuō)了其中比較常見(jiàn)的而已,希望大家能多多鉆研。
評(píng)論(0人參與,0條評(píng)論)
發(fā)布評(píng)論
最新評(píng)論