許多網站設計者最常犯的錯誤便是當其網頁能夠在IE下正常顯示便認為其代碼正確無誤,甚至常看到有人在抱怨其網站排名不理想,到其網站簡單看一下便可發現HTML代碼中充斥各種各樣的錯誤,在那樣的代碼基礎上無論付出多少努力去優化網站結果都可能是付諸流水的啊!
事實上,IE是一款對HTML代碼容錯能力甚高的的浏覽器,——說句題外話,盡管我們可以有各式各樣的理由可以攻擊微軟,但微軟對其產品操作的易手性及可用性方面所做的努力是不容抹殺的。——Web頁面能夠在IE下正常顯示絕不意味著頁面的HTML代碼沒有問題,甚至可以推而廣之,Web頁面在多種浏覽器下均可正常顯示也不意味著HTML代碼完全合法有效,畢竟哪個浏覽器都要保證基本的容錯的功能,不然,就會發生即使僅僅因為網絡傳輸中的一點導致導致HTML頁面顯示不正常了,而這在網絡帶寬仍然緊張的今天仍是頻繁發生的。 什麼是合法有效的HTML代碼 簡單說來,我們的Web頁面是由HTML(Hypertext Markup Language : 超文本鏈接標示語言)元素構成的,即使對於ASP、PHP之類的動態頁面,其也是由SERVER將ASP或PHP語句渲染成相應的HTML元素並下傳到客戶機上;對於JavaScript之類則由客戶端將其轉換為HTML。 同其他語言一樣,HTML也有自己的語法規則,無論是浏覽器還是搜索引擎的Spider都在根據這些規則來分析網頁代碼中的內容。但很多時候,即使對熟練人員來說,在HTML頁面構建時仍然難免出些HTML代碼上的錯誤,更別提大部分所見即所得編輯器造成的HTML冗余臃腫問題了。 如果頁面中不存在違背HTML標准語法規范的成分,即可被稱為合法有效的HTML代碼 合法有效的HTML代碼對SEO的重要性 要使搜索引擎收錄我們的網頁,——在此基礎上才能談網站優化網站推廣——其前提是要讓搜索引擎的Spider能讀懂我們的Web文件。搜索引擎Spider閱讀網頁的根據便是HTML規范,通過對HTML代碼的分析,Spider才能判斷網頁內容,在此基礎上才能判斷針對相應關鍵詞的相關性。 需要明確的是,搜索引擎Spider不同於浏覽器的一點便是其容錯能力相對於浏覽器要差不少,如果頁面代碼中存在其無法解釋的HTML代碼時,其便可能停止閱讀該頁面甚至可能停止在我們的網站內爬行,更嚴重的錯誤甚至會導致其同時也丟棄已經收集到的網站內其他頁面的內容信息。 盡管如今如大主要搜索引擎也都在盡力提高Spider的容錯能力,讓其可以在HTML代碼出現一般性錯誤時不至影響對內容的收集。但很多時候,仍然會發生如漏了一個關閉標簽導致整個頁面的內容被忽略的情況。 另一方面,合法有效的HTML也可以保證Web頁面可以在多種浏覽器下被正確解釋,避免同一個頁面在IE下顯示正常在Mozilla下卻嚴重變形的情況(當然,不能完全避免),這對於提高網站的可用性方面也是有著極大好處的。 如何驗證HTML代碼的合法有效? Internet有很多類似的免費服務可以幫我們驗證網頁代碼是否合法有效,其中最著名的即是 W3C HTML Validator ,這是由W3C( World Wide Web Consortium:萬維網聯盟)官方推出的免費服務項目,在其頁面上只需輸入待驗證的HTML地址或者上傳一個在本地機上的HTML文件即可,其會很快返回校驗結果,是否無誤,如有錯誤分別為哪些及如何改進等。 同時,W3C HTML Validator也提供對CSS文件的驗證服務。 一定要通過W3C的驗證麼? 對這個問題的答案則不那麼絕對。 理論上說,合法的HTML代碼能夠使搜索引擎的Spider在更容易地收集網站頁面的內容信息。但另一方面,並不是所有的HTML代碼錯誤都會影響到Spider的爬行,也即是說,HTML存在少量的錯誤對Spider來說也是可接受的,那麼,一定要通過W3C認證麼? 另一方面,如在Mark Daoust的測試中,甚至暗喻(未肯定地下結論)存在少量HTML代碼錯誤在頁面在Google排名中能更占優勢,當然這存在很大爭議,但至少證明了存在少量HTML代碼錯誤並不影響網頁在SERP中的排名。 個人觀點,如果您對HTML相對不那麼熟悉的話,倒也不必強求非得100%通過W3C的驗證,畢竟把更多的時間與精力放到真正應該努力的方向如創建內容與鏈接才是根本,但要保證HTML代碼中不存在大的嚴重性錯誤。當然,如果您對HTML語言較為精通,那麼,何妨稍花點功夫以確保其完全無誤呢?因此,我們要做的倒不一定非得通過W3C認證,但至少要保證其在各種浏覽器下顯示正常,保證搜索引擎的Spider能夠正常分析。 提高HTML代碼的效率 前文我們提說過很多所見即所得編輯器造成的HTML冗余臃腫問題,這種情況在很多中文網站相當普遍。所見即所得編輯器如FrontPage、Dreamweaver,尤其在其對一個網頁進行修改的時候,往往會產生很多不必要的冗余代碼。當頁面的HTML文件在存在大量的冗余代碼時,文件便會變得臃腫,這不但會降低網頁的打開速度,損害到網頁的效率,同時也會嚴重影響到相當網頁的搜索引擎排名。 與其把精力投入到一定通過W3C認證上,個人認為,倒不如把更多的精力放到精減代碼上,如引入CSS等,以實現代碼的干淨簡潔。這樣的優化效果會更明顯。