XHTML/XHTML 語法
HTML 程式碼和 XHTML 程式碼之間的語法差異很小。在本節中,我們將討論編碼的相似之處和不同之處。
實際上有很多,但必須更加結構化。例如,在 HTML 中,你不必新增p(段落)標籤;它們是可選的。在 XHTML 中,你必須新增。
換句話說,你不能再將文字直接放到 body 中,使用者必須向文字中新增元素。元素並沒有發生巨大變化。以下各節將討論變化。
如前所述,與 HTML 相比,編碼嚴格。其中一種情況是標籤和屬性必須小寫。在 HTML 中,你可以這樣做
<P>This is a paragraph</p>
在 XHTML 中,這無效。所有標籤和屬性都必須小寫,如下所示
<p>This is a paragraph</p>
這是正確的 XHTML,所有標籤都小寫。
與普通的 HTML 一樣,你必須關閉標籤。在 HTML 瀏覽器中,你可以省略,它仍然會顯示網頁,但最終看起來會很奇怪。現在,在 XHTML 中,開始和結束標籤是必須的。如下所示
<p>The <b>Cat</b> sat on the mat.</p>
這是良好的 XHTML 編碼,請記住開啟和關閉標籤。請注意,標籤也是格式良好的。b(粗體)標籤位於p(段落)標籤內。
任何標籤對都不應該為空。如果你需要表示一個空標籤,你需要在標籤本身內包含一個斜槓。例如,<br> 被替換為 <br />。
如前所述,屬性必須小寫。例如
content="text/html; charset=iso-8859-1"
另請注意屬性的值被引號引起來。還有一些屬性值是大寫的,例如
http-equiv="Content-Type"
這種情況很少見。屬性必須具有值;它們不能再單獨存在。
在進行內部連結時,情況發生了變化。這是 XHTML 的做法
This is the link that takes you to the section on the page:
<a href="#Fred">Go to Fred</a>
This is the position where the link will take you:
<p id="Fred">This is Fred</p>
有些人批評開發人員仍然需要在標籤中新增舊的“name”屬性。這樣做仍然可以,因為一些舊瀏覽器可能無法讀取新的命令。
開發人員還必須注意與字元。這些是頁面地址或表單中的特殊字元,例如那些在 PHP 論壇中使用的字元。如果使用者必須在 XHTML 中編碼其中一個字元,他或她必須更改以下內容
<a href="forum.php?&style=orange">Forum</a>
變成
<a href="forum.php?&style=orange">Forum</a>
請注意,& 變成 &。
影像方面並沒有太大變化。使用者唯一需要考慮的是alt屬性。在 HTML 中,它是可選的。現在必須將其包含在內,以防影像無法呈現
<img src="photo.gif" alt="Photo of the Beach" />
這樣做會在找不到原始檔中的影像時,在影像應該出現的位置顯示文字。
雖然applet標籤可以使用,但被認為是糟糕的開發方式,嚴格的 XHTML 不再允許使用它。如果你想使用小程式,無論是 Java 還是 Flash,你現在必須使用object標籤。
當你宣告 DTD Transitional 或 Frameset 時,你仍然可以使用這些標籤(除了<xmp>),但建議你不要使用這些標籤
<applet>
<basefont>
<b>
<center>
<dir>
<font>
<i>
<isindex>
<menu>
<s>
<strike>
<u>
<xmp>
這些標籤在 XHTML 1.1 中無效