天天看點

在XHTML文檔中合适的使用CSS和JavaScript在XHTML文檔中合适的使用CSS和JavaScript

在許多站點中xhtml正在迅速的替代html 4;然而,主流浏覽器對完全支援xhtml方面表現得不足,和網頁設計師對html 4與xhtml的基本差異缺乏了解,産生了當今網絡上的一個不斷擴大的問題。

其中關于xhtml的主要的誤解是,它僅僅是另外一個版本的html。這個誤解産生于這樣的事實:microsoft® internet explorer隻在檔案以mime類型為 text/html送出時,才支援xhtml,而标準中建議的類型其實是application/xhtml+xml。

當一個xhtml頁面的mime類型被送出為text/html時,它被所有的浏覽器當作html處理,就好像xhtml比起html來沒有任何不同。但是當一個xhtml頁面的mime類型被送出為text/xml或application/xhtml+xml時,它将被當作xml文檔處理,而設計和顯示xml都是必須要遵守嚴格規則的。

真正的xhtml就是一個xml的應用,是以建立xhtml時也要遵守嚴格的規則。特别是:

注釋(<!—— ... ——>)中不能包含雙橫線。

包含在注釋(<!—— ... ——>)中的内容将被忽略。

在被當作xml而不是html處理時,内嵌的style和script标記會産生幾個不同的問題。

典型的javascript中包含了一些特殊字元,這些字元在xhtml中是不允許放在cdata區域之外的。

熟悉html的設計師通常把内嵌的style和script内容放到注釋中,這樣可以在不支援樣式和腳本的浏覽器中隐藏它們。

<dl></dl>

<dt>mozilla 1.1+/opera 7</dt>

<dd>不能使用css,也不能執行javascript。</dd>

<dt>netscape 7.0x/mozilla 1.0.x</dt>

<dd>不能使用css,但可以執行javascript。</dd>

<dt>internet explorer 5.5+</dt>

<dd>無法正常顯示文檔。 </dd>

直接把javascript放入cdata區域會在低版本不支援xml的浏覽器中産生問題,不過,把javascript的注釋(//……)與cdata一起使用,就能解決向下相容的問題了。

<dt></dt>

用外部檔案包含css規則和javascript來替換内聯樣式和腳本是建立xhtml最佳方式,在向後相容方式時,如果内容的mime類型從text/html向application/xhtml+xml改變時将不會被打斷。

這個建議可能看起來更強烈,可是,它是未來xhtml要打算的問題,當xhtml在text/html向application/xhtml+xml轉移在幾年後發生。

如果你僅僅測試你的xhtml在text/html的時候,那麼你可能産生問題,例如像:不能準确的描述出主題。移動css和javascript到單獨的檔案是可靠的方法,關于改變你xhtml的服務方式。

請注意那是純粹的xhtml文檔,你不需要使用xml-stylesheet處理指導,但應該使用link涉及的外部檔案包含css。

繼續閱讀