如何將你的網(wǎng)站升級至 XHTML ?

2021-12-06 13:49 更新

首先我們?yōu)槭裁匆獙⒕W(wǎng)站升至XHTML,因為XHTML是一種更加嚴格和更加純凈的HTML版本,它是由XML和HTML組合而成的,XML是用來裝載數(shù)據(jù)的,標簽必須被正確地標記,而HTML是用來顯示數(shù)據(jù)的,因此將兩者的長處結(jié)合起來,就有了XHTML。在一般的網(wǎng)站中,有部分的代碼沒有按照HTML的規(guī)則也依舊可以運行,這樣子不利于文檔的維護,導(dǎo)致不良的文檔結(jié)構(gòu)形式,而XHTML是W3C的一種標準,它的目標就是逐漸替代HTML版本的,而且現(xiàn)代的瀏覽器完全支持XTHML,現(xiàn)在以及以后的發(fā)展趨勢也會以XHTML為準,所以將網(wǎng)站升至XHTML是一種必然的趨勢。


為了將站點從 HTML 轉(zhuǎn)換為 XHTML,你首先應(yīng)該熟悉前幾章講解的 XHTML 語法規(guī)則。


從 HTML 轉(zhuǎn)換為 XHTML的具體步驟:

  1. 添加文件類型說明
  2. 小寫的標簽和屬性名
  3. 給所有屬性加上引號
  4. 空標簽:<hr> , <br>  <img>
  5. 驗證站點


仔細地遵循W3C的兼容性準則,用戶代理(Web瀏覽器)應(yīng)該能夠像HTML或XHTML一樣輕松地解釋文檔。


一、添加文件類型說明


將下面的文件類型聲明復(fù)制到文檔的首行:

<!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

注意:本站 (W3Cschool) 使用的是嚴格的 DTD。對于初學(xué)者來說,我們可以使用transitional(過渡)類型的,因為使用strict(嚴格)類型可能就顯得有點"嚴格"了。


關(guān)于文件類型聲明的一點提示

如果你希望將頁面驗證為正確的 XHTML,那么頁面中必須含有文件類型聲明。

需要注意的是,根據(jù)不同的文件類型聲明,新式的瀏覽器對文檔的處理方式也是不同的。如果瀏覽器讀到一個文件類型聲明,那么它會按照“恰當(dāng)”的方式來處理文檔。如果沒有了DOCTYPE,文檔或許以不同的方式顯示出來。


二、小寫的標簽和屬性名


由于 XHTML 對大小寫敏感,同時也由于 XHTML 僅接受小寫 HTML 標簽和屬性名,因此你可以執(zhí)行一個簡單的搜索和替換命令將所有的大寫標簽改為小寫。對屬性名也要做同樣的處理。我們一直在自己的網(wǎng)站使用小寫字母,因此基本上,替換功能沒有太多地派上用場。


三、給所有屬性加上引號


由于 W3C XHTML 1.0 標準中要求所有的屬性值都必須加引號,所以,如果以前沒有注意到這個細節(jié),你需要逐頁地對網(wǎng)站進行檢查。這是一項費時的工作,所以絕不要再忘記為屬性值加引號了。


四、空標簽:<hr> , <br> 和 <img>


在 XHTML 中是不允許使用空標簽(Empty tags)的。<hr><br> 標簽應(yīng)該被替換為 <hr /><br />。

這樣做又產(chǎn)生了一個新問題,Netscape 會誤讀 <br/> 標簽。我們不清楚原因所在,不過將之改為 <br />后就沒有問題了。認識到這一點后,你需要再一次通過搜索和替換功能對標簽進行更改。

其他一些標簽(比如 <img> 標簽)也會碰到上述同樣的問題。不要使用閉合標簽來關(guān)閉 <img>,而是要在標簽的末端添加 / >。


五、驗證站點


做完所有這一切以后,使用下面的鏈接根據(jù)官方的 W3C DTD 對所有修改過的頁面進行驗證:XHTML Validator。接下來,可能還會有少數(shù)的錯誤被發(fā)現(xiàn),逐一對這些錯誤進行(手工地)修正。我們的經(jīng)驗是,最容易犯的錯誤是在列表中漏掉了 </li> 標簽。

我們應(yīng)該使用轉(zhuǎn)換工具嗎(比方說 TIDY)?對,我們本可以使用 TIDY。

Dave Raggett 的 HTML TIDY是用來清理HTML代碼的免費工具。在處理那些由專門的 HTML 代碼編輯器和轉(zhuǎn)換工具生成的難以閱讀的HTML代碼方面,TIDY 還是做得很棒的。同時,它可以幫助你發(fā)現(xiàn)站點中哪些地方需要投入更多精力,使得對于殘疾人士,網(wǎng)頁具有更強的易用性。

我們沒有使用 Tidy 是出于什么原因呢?當(dāng)我們開始創(chuàng)建這個網(wǎng)站時,我們已經(jīng)對 XHTML 非常地熟悉。當(dāng)時我們已經(jīng)知道使用小寫標簽以及為屬性加引號。所以在網(wǎng)站測試的過程中,我們只是簡單地通過 W3C 的 XHTML 驗證器進行了測試,并修正了少許的錯誤。更重要的是,我們已經(jīng)學(xué)到了很多關(guān)于編寫 Tidy 式 HTML 代碼的知識。


注意:


  1. XHTML文件的開始要聲明DTD。
  2. 你需要為你的<html>標簽添加一個命名空間。
    關(guān)于DTD和命名空間的內(nèi)容請參照XHTML教程——XHTML DTD。
  3. 所有的標簽和標簽的屬性都必須小寫,屬性值可以大寫。
  4. 屬性值必須用引號括起來。單引號雙引號均可。
  5. 所有的標簽都必須被關(guān)閉,空標簽也不例外。關(guān)閉空標簽的方法如下:
    HTML中的<br />要寫成<br/>。注意,后面加了一個空格” “和一個反斜杠”/“。
  6. 如果你使用的是strict.dtd。也就是最嚴格的XHTML,那么許多定義外觀的屬性都將不被允許。
    例如你為圖片添加鏈接的同時想去掉邊框。不可以再使用<img src="..."border="0">,而是必須通過CSS來實現(xiàn)。我們推薦您在使用strict.dtd時,舍棄所有的定義外觀屬性,而完全使用CSS來定義頁面外觀。
  7. 每個圖片都應(yīng)該提供alt文本。

課外閱讀


如果您希望更深入的理解利用 XHTML 對頁面進行結(jié)構(gòu)化的知識,請閱讀《XHTML 結(jié)構(gòu)化》。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號