html與xhtml的不同
html與xhtml的不同
XHTML 與 HTML 4.01 標準沒有太多的不同
XHTML 是什麼?
- XHTML 指可擴充套件超文字標籤語言(EXtensible HyperText Markup Language)。
- XHTML 的目標是取代 HTML。
- XHTML 與 HTML 4.01 幾乎是相同的。
- XHTML 是更嚴格更純淨的 HTML 版本。
- XHTML 是作為一種 XML 應用被重新定義的 HTML。
- XHTML 是一個 W3C 標準。
(1)XHTML 元素必須被正確地巢狀
在 HTML 中,某些元素可以像這樣彼此不正確地巢狀:
<b><i>This text is bold and italic</b>
</i>
在 XHTML 中,所有的元素必須像這樣彼此正確地巢狀:
<b><i>This text is bold and italic</i></b>
提示:在巢狀列表中一個容易犯的錯誤,是忘記內部列表必須位於 li 元素中,就像下面這樣:
這是錯誤的:
<ul>
<li>Coffee</li>
<li>Tea
<ul>
<li>Black tea</li>
<li>Green tea</li>
</ul>
<li>Milk</li>
</ul>
這是正確的:
<ul> <li>Coffee</li><li>
Tea <ul> <li>Black tea</li> <li>Green tea</li> </ul></li>
<li>Milk</li> </ul>
注意:在正確程式碼的例子中,我們在 </ul> 之後插入了一個 </li> 標籤。
2,XHTML 元素必須被關閉,非空標籤必須使用結束標籤。
這是錯誤的:
<p>
This is a paragraph<p>
This is another paragraph
這是正確的:
<p>
This is a paragraph</p>
<p>
This is another paragraph</p>
空標籤也必須被關閉
空標籤也必須使用結束標籤,或者其開始標籤必須使用/>
結尾。
這是錯誤的:
A break: <br> A horizontal rule: <hr> An image: <img src="happy.gif" alt="Happy face">
這是正確的:
A break: <br/>
A horizontal rule: <hr/>
An image: <img src="happy.gif" alt="Happy face"/>
這是錯誤的:
<BODY>
<P>
This is a paragraph</P>
</BODY>
這是正確的:
4,XHTML 文件必須擁有一個根元素<body>
<p>
This is a paragraph</p>
</body>
所有的 XHTML 元素必須被巢狀於 <html> 根元素中。其餘所有的元素均可有子元素。子元素必須是成對的且被巢狀在其父元素之中。基本的文件結構如下:
5,<html>
<head> ... </head> <body> ... </body></html>
編寫 XHTML 程式碼需要純淨的 HTML 語法。
更多的 XHTML 語法規則:
- 屬性名稱必須小寫
- 屬性值必須加引號
- 屬性不能簡寫
- 用 Id 屬性代替 name 屬性
- XHTML DTD 定義了強制使用的 HTML 元素
屬性名稱必須小寫
這是錯誤的:
<table WIDTH
="100%">
這是正確的:
<table width
="100%">
屬性值必須加引號
這是錯誤的:
<table width=100%
>
這是正確的:
<table width="100%"
>
屬性不能簡寫
這是錯誤的:
<input checked> <input readonly> <input disabled> <option selected> <frame noresize>
這是正確的:
<input checked="checked" /> <input readonly="readonly" /> <input disabled="disabled" /> <option selected="selected" /> <frame noresize="noresize" />
下面是一個 HTML 的簡寫屬性列表,以及在 XHTML 中的改寫:
HTML | XHTML |
---|---|
compact | compact="compact" |
checked | checked="checked" |
declare | declare="declare" |
readonly | readonly="readonly" |
disabled | disabled="disabled" |
selected | selected="selected" |
defer | defer="defer" |
ismap | ismap="ismap" |
nohref | nohref="nohref" |
noshade | noshade="noshade" |
nowrap | nowrap="nowrap" |
multiple | multiple="multiple" |
noresize | noresize="noresize" |
用 id 屬性代替 name 屬性
HTML 4.01 針對下列元素定義 name 屬性:a, applet, frame, iframe, img, 和map。
在 XHTML 中不鼓勵使用 name 屬性,應該使用 id 取而代之。
這是錯誤的:
<img src="picture.gif" name
="picture1" />
這是正確的:
<img src="picture.gif" id
="picture1" />
重要的相容性提示:
你應該在 "/" 符號前新增一個額外的空格,以使你的 XHTML 與當今的瀏覽器相相容。
語言屬性(lang)
lang 屬性應用於幾乎所有的 XHTML 元素。它定義元素內部的內容的所用語言的型別。
如果在某元素中使用 lang 屬性,就必須新增額外的 xml:lang,像這樣:
<div lang="no" xml:lang="no"
>Heia Norge!</div>
強制使用的 XHTML 元素
所有 XHTML 文件必須進行檔案型別宣告(DOCTYPE declaration)。在 XHTML 文件中必須存在html、head、body元素,而 title 元素必須位於在 head 元素中。
下面是一個最小化的 XHTML 檔案模板:
<!DOCTYPE Doctype goes here>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Title goes here</title>
</head>
<body>
</body>
</html>
提示:檔案型別宣告並非 XHTML 文件自身的組成部分。它並不是 XHTML 元素,也沒有關閉標籤。
提示:在 XHTML 中,<html> 標籤內的 xmlns 屬性是必需的。然而,即使當 XHTML 文件中沒有這個屬性時,w3.org 的驗證工具也不會提示錯誤。這是因為,"xmlns=http://www.w3.org/1999/xhtml" 是一個固定的值,即使你沒有把它包含在程式碼中,這個值也會被新增到 <html> 標籤中。
原文連線:http://www.w3school.com.cn/xhtml/xhtml_html.asp
相關文章
- HTML與XHTML的區別HTML
- XHTML?它與 HTML的區別?如何轉換HTML
- 與HTML相比XHTML有什麼特點?HTML
- 與HTML相比XHTML有什麼特點?(轉)HTML
- 【讀書筆記】XHTML與HTML5的差異筆記HTML
- HTML不同版本與宣告HTML
- 【java web】--html、xhtml、xml進化史JavaWebHTMLXML
- 《HTML5+CSS3網頁設計入門必讀》——1.7 XHTML已被廢棄:XHTML的語法永存HTMLCSSS3網頁
- XHTMLHTML
- Html5和Html4的不同HTML
- 將HTML轉成XHTML並清除一些無用的標籤和屬性HTML
- XHTML 1.0規範HTML
- xhtml常見問題HTML
- Swift與OC的不同Swift
- HTML4和HTML5之間的10個主要不同HTML
- 《xhtml入門系列》之四HTML
- 15.2.XHTML+DIV+CSSHTMLCSS
- XHTML基礎問答(轉)HTML
- XHTML 對文件型別(DOCTYPE)的驗證HTML型別
- 《HTML5+CSS3網頁設計入門必讀》——1.3 XHTML2:不被接受HTMLCSSS3網頁
- 矩陣-DirectX與OpenGL的不同矩陣
- HTML <script> 指令碼的 async 與 defer 屬性及不同屬性的執行時機與 DOMContentLoaded 事件的關係HTML指令碼事件
- XHTML+CSS:呼叫樣式表(轉)HTMLCSS
- HTML5系列:HTML5與HTML4的區別HTML
- HTML的介紹與seoHTML
- 【HTML與XML的對比】HTMLXML
- 理解:MySQL的null與空字串的不同MySqlNull字串
- 字串大小的不同求法與區別字串
- 前端渲染HTML與後端渲染HTML的區別前端HTML後端
- xhtml & css 簡易學習筆記(一)HTMLCSS筆記
- asp.net中的html控制元件點選事件與伺服器控制元件點選事件的不同ASP.NETHTML控制元件事件伺服器
- Java與眾不同的字串-String類Java字串
- C# 與 Java 的不同點總結C#Java
- C與C++函式的不同特性C++函式
- Html ul與ol的區別HTML
- html canvas 與小丑 。HTMLCanvas
- python中 “與,或,異或”與C語言的不同PythonC語言
- 如何讓你的iOS與Android應用與眾不同iOSAndroid