星期五, 12月 01, 2006

即將消逝的HTML標籤

簡述XHTML1.0

XHTML是當前HTML版的繼承者。HTML語法要求比較鬆散,這樣對網頁編寫者來說,比較方便,但對於機器來說,語言的語法越鬆散,處理起來就越困難,對於傳統的電腦來說,還有能力相容鬆散語法,但對於許多其他設備,比如手機,難度就比較大。因此產生了由DTD定義規則,語法要求更加嚴格的XHTML。

在XHTML1.0,只是個過渡階段的版本,並沒有開始對已經是不良結構的標籤大加撻伐,但已經開始建議(或是刪除)不可以使用以下標籤(標示常用的):

  • <b>粗體標籤:仍舊可以使用,但建議用<strong>,具有語意的標籤替代。
  • <i>斜體標籤:仍舊可以使用,但建議用<em>,具有語意的標籤來替代。
  • <u>底線標籤:不可使用,欲使用底線,只能用CSS的text-decoration:underline來顯示。
  • <br>強制斷行標籤:不可使用,需補上結尾符號,改寫成<br />
  • <hr>水平線標籤:不可使用,需補上結尾符號,改寫成<hr />
  • <img>圖片標籤:不可使用,需補上結尾符號,改寫成<img src="....." /> 另外,每個img標籤都必須要含有alt屬性,屬性內容可以留白
  • <a>超連結標籤的target屬性:target屬性及代表超連結被點擊時,指定開啟的視窗框架,講明白一點,就是再也不能製作開新視窗的超連結了

XHTML2.0草案

XHTML 2.0 的第一個工作草案於 2002 年 8 月 5 日發佈,一大新聞就是取消了向後相容性,換句話說,使用XHTML為基礎的網頁,就無法使用以下的標籤:

  • <b>粗體標籤:用<strong>,具有語意的標籤替代。
  • <i>斜體標籤:用<em>,具有語意的標籤來替代。
  • <br>強制斷行標籤:在XHTML1.0建議的補上結尾符號<br />也一併不支援,改用具有結尾標籤的<line>替代。
  • <h1>到<h6>章節標籤:改用單純的<h>標籤代表,然後用<section>標籤來區分重要性。
  • <a>超連結標籤:在XHTML2.0將會完全的功成身退,在XHTML裡的所有標籤都將可具備超連結的功能(href屬性),比如:
    <em href="http://tw.yahoo.com" >雅虎奇摩網站</em>
    <p href="http://www.w3c.com">這是一個段落,點擊這個段落也可以啟動超連結</p>
  • <img/>圖片標籤:這個標籤也將被刪去,替代他的是也已經存在很久的<object>。使用 object 標籤的主要優點在於,它被設計成向下串連。換句話說,如果瀏覽器不能顯示一個特定物件,那麼它將顯示該物件的內容。例如,遇到下列程式碼片斷的瀏覽器首先試圖載入電影。如果載入電影失敗,則載入圖像。如果載入圖像失敗,那麼它只顯示純文字。
    <object data="rides.mpeg" type="application/mpeg">
     <object data="rollercoaster.jpg" type="image/jpg">
        Jack tries to expand his horizons on the racing coasters.
     </object>
    </object>

現在擔心還太早

2002 年 8 月 5 日的 XHTML 2.0 工作草案中唯一可以確定的事就是不能確定任何事情。 在現在的草案和被作為建議書採納的過程中,幾乎可以肯定它將在某些方面發生變化。又,已經累積上億頁的舊版html資料龐大,我相信各家瀏覽器一定盡可能的繼續支持向後相容,所以,新的XHTML最大受惠者,還是屬於記憶體較小,處理能力較差的小型瀏覽器(如:手機)。