語義化的HTML結構怎麼理解

weixin_34321977發表於2015-01-07

相信大家都知道html和css,知道html結構和css表現分離,知道html語義化,這些都是這幾年的熱門關鍵字。語義化的html在國內也是一兩年前才開始被追捧的,看看現在群裡談論的html結構,關於html結構的面試題,語義化的html佔據了很大一部分。那麼為什麼要使用語義化的HTML?語義化的HTML到底有什麼好處呢?
HTML是提供網頁文件內容的上下文結構和含義;html本身是沒有表現的,我們看到例如<h1>是粗體,字型大小2em,加粗;<strong>是加粗的,不要認為這是html的表現,這些其實html預設的css樣式在起作用,所以首先我們要知道html和頁面的表現是沒有關係的,這些是css的事情。HTML在頁面中的作用就是結構和含義,通俗點說就是劃分內容,這裡放什麼,我們放的是什麼。

語義化的HTML結構首先要強調HTML結構

HTML結構是頁面的骨架,一個頁面就好像一幢房子,HTML結構就是鋼精鋼筋混泥土的牆,一幢房子如果沒有鋼精鋼筋混泥土的牆那就是一堆費磚頭,不能住人,不能辦公。css是裝飾材料,是原木地板,是大理石,是油漆,是用來裝飾房子的,CSS的強大就不用多說了,css如果沒有html結構那就是一堆木板,一同油漆,沒有了實際使用價值。CSS完全依靠引用它的(X)HTML文件。如果你想使CSS的能力充分發揮到極致,提供一個用既乾淨又有結構的內容的html是非常必要的,“HTML是在網際網路上釋出超文字的通用語……HTML使用標籤來對文字結構化”(http://www.w3.org/MarkUp/)。

語義化的HTML結構怎麼寫?

HTML是一種對文字內容進行結構和意義(或者說“語義”)進行補充的方法。它會告訴我們說:“這行是一個標題,這幾行組成了一個段落。這些文字是專案列表,這些文字是連結到網際網路上另一個檔案的超連結。”值得注意的是,不應該讓HTML來告訴我們:“這些文字是藍色的,這些文字又是紅色的。這部分內容是最最靠右的一欄,這行內容是斜體字。”這些和表現相關的資訊是CSS的工作。在做前端開發的時候要記住:HTML告訴我們一塊內容是什麼(或其意義),而不是它長的什麼樣子。當我們提到“語義標記”的時候,我們所說的HTML應該是完全脫離表現資訊的,其中的標籤應該都是語義化地定義了文件的結構。
語義化的HTML結構其實很簡單,首先掌握html中各個標籤的語義,<div>是一個容器;<strong>是表示強調;<ul><li>是一個無序列表等等…在看到內容的時候想想用什麼標籤能更好的描述它,是什麼就用什麼標籤。
語義化的HTML結構到底有什麼好處?
我們知道HTML5新增的標籤,比如<header>和<footer>,html正在朝著更加健壯的語義化的HTML結構發展,xhtml2在這點上沒html5先進,這也是xhtml2死亡的一個原因,這一點也說明了語義化的

HTML結構是html的發展趨勢。####

1.去掉或樣式丟失的時候能讓頁面呈現清晰的結構:

html本身是沒有表現的,我們看到例如<h1>是粗體,字型大小2em,加粗;<strong>是加粗的,不要認為這是html的表現,這些其實html預設的css樣式在起作用,所以去掉或樣式丟失的時候能讓頁面呈現清晰的結構不是語義化的HTML結構的優點,但是瀏覽器都有有預設樣式,預設樣式的目的也是為了更好的表達html的語義,可以說瀏覽器的預設樣式和語義化的HTML結構是不可分割的。

2.螢幕閱讀器(如果訪客有視障)會完全根據你的標記來“讀”你的網頁.

例如,如果你使用的含語義的標記,螢幕閱讀器就會“逐個拼出”你的單詞,而不是試著去對它完整發音.

3.PDA、手機等裝置可能無法像普通電腦的瀏覽器一樣來渲染網頁(通常是因為這些裝置對CSS的支援較弱).

使用語義標記可以確保這些裝置以一種有意義的方式來渲染網頁.理想情況下,觀看裝置的任務是符合裝置本身的條件來渲染網頁.
語義標記為裝置提供了所需的相關資訊,就省去了你自己去考慮所有可能的顯示情況(包括現有的或者將來新的裝置).例如,一部手機可以選擇使一段標記了標題的文字以粗體顯示.而掌上電腦可能會以比較大的字型來顯示.無論哪種方式一旦你對文字標記為標題,您就可以確信讀取裝置將根據其自身的條件來合適地顯示頁面.

4.搜尋引擎的爬蟲也依賴於標記來確定上下文和各個關鍵字的權重.

過去你可能還沒有考慮搜尋引擎的爬蟲也是網站的“訪客”,但現在它們他們實際上是極其寶貴的使用者.沒有他們的話,搜尋引擎將無法索引你的網站,然後一般使用者將很難過來訪問.

5.你的頁面是否對爬蟲容易理解非常重要,因為爬蟲很大程度上會忽略用於表現的標記,而只注重語義標記.

因此,如果頁面檔案的標題被標記,而不是,那麼這個頁面在搜尋結果的位置可能會比較靠後.除了提升易用性外,語義標記有利於正確使用CSS和JavaScript,因為其本身提供了許多“鉤鉤”來應用頁面的樣式與行為.
SEO主要還是靠你網站的內容和外部連結的。

6.便於團隊開發和維護

W3C給我們定了一個很好的標準,在團隊中大家都遵循這個標準,可以減少很多差異化的東西,方便開發和維護,提高開發效率,甚至 實現模組化開發。

相關文章