在作項目的過程當中,咱們常常會創建各類各樣的規範,以方便團隊之間更好的合做更好的完成項目;一樣咱們也常常會聽到各類各樣的協議,好比Google的IM軟件Gtalk使用的開放的XMPP協議,只要其餘IM軟件也遵循XMPP協議就能與Gtalk使用互通;而互聯網上的信息無以計數,這些信息自己是獨立存在的,如何將其串聯並呈如今用戶眼前,就須要使用到HTTP協議。
一樣的道理,由於瀏覽器們各自的內核不一樣,對於默認樣式的渲染也不盡相同,因此就須要一份各瀏覽器都遵循的規則來保證同一個網頁文檔在不一樣瀏覽器上呈現出來的樣式是一致的,這個規則就是DOCTYPE聲明。
由於互聯網是互通的,因此任意的兩個或者以上的網頁文檔均可能會涉及到數據交換,而由於xml語言是容許用戶自定義標籤的,因此任意兩個交換的文檔就可能會出現相同的標籤,從而致使相同標籤的衝突,因此就須要一個命名空間以區分開交換文檔中可能存在的相同標籤。
XHTML作爲HTML向XML過渡的一種語言,並不能實現XML語言中的用戶自定義標籤,因此XHMTL文檔中的命名空間都是相同的:
xmlns便是XHTML namespace的縮寫,也就是所謂的「命名空間」。與DOCTYPE聲明同樣,xmlns也屬於一種聲明。與HTML文檔中仍然存在DOCTYPE聲明不同的是,在HTML文檔是不存在xmlns的,咱們日常所見到的xmlns都是出如今XHTML文檔中的。
在製做一個網頁的時候,除了在開始的時候聲明DOCTYPE(文檔類型)以外,若是是XHTML文檔還須要聲明命名空間,而第三個須要聲明的就是網頁文檔的字符編碼類型:
爲了能被瀏覽器正確的解釋以及經過W3C驗證,每一個XHTML文檔都應該聲明所使用的字符編碼。不少時候網頁文檔出現亂碼大部分都是因爲字符編碼不對而引發的。
xhtml說明:http://baike.baidu.com/view/15906.htmhtml