XHTML是W3C推薦的一種標準,它定義了一種與XML相容的HTML版本。 XHTML文檔是一個有效的XML文檔,所以編寫格式比HTML嚴格。
XHTML是W3C推薦的一種標準,它定義了一種與XML相容的HTML版本。 XHTML文檔是有效的XML文檔,所以編
XHTML是W3C建議的一種標準,它定義了一種與XML相容的HTML版本。 XHTML文檔是一個有效的XML文檔,所以編寫格式比HTML嚴格。
XHTML是W3C建議的一種標準,它定義了一種與XML相容的HTML版本。 XHTML文檔是一個有效的XML文檔,所以編寫格式比HTML嚴格。若需從HTML文檔轉換成XHTML文檔,需作下列變更:
在XHTML中不允許省略結束標籤,所以需補齊缺少的標籤。
#元素依正確的順序嵌套。
#所有元素與屬性的名稱皆以小寫。
#屬性值需加上引號,如
。
#所有屬性皆需有屬性值。
#以&和<等的實體形式表示這些字元。
#確保文件有單一元素,最好使用html。
#像
#註釋應以的形式改為。
#文件編碼應採用UTF-8或UTF-16,或新增XML宣告指定文件的編碼方式。
#必須移除非標準的元素。如:marguee。
#新增一個DOCTYPE宣告,以PUBLIC指向XHTML的三種DTD中的一種。分別是Strict、Transitional和Frameset,一般都使用Strict。
Strict(嚴格型),W3C建議的XHTML形式。不包括一些非標準的元素和屬性,如applet和center等。宣告方式如下:
#Transitional(過渡型),一種較不嚴格的XHTML格式,可使用一些非標準的元素和屬性,如applet和bgcolor等。陳述方式如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
Frameset(框架型),與過渡型DTD類似,允許使用與框架相關的元素,如frameset和iframe。宣告方式如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
文件的根元素必須具有xmlns屬性,並識別缺省的名稱空間提http://www.php. cn/。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
下面是標準的XHTML文件的範例:
由HTML轉到XHTML是一種枯燥而無聊的工作,現在有一種叫tidy的開源工具可幫我們完成大部份的工作,它是一個C程序,使用方法如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">xhtml example ...
% tidy --output-xhtml yes test.html test.xml
#XHTML 1.1把XHTML的三種DTD分成獨立模組。我們可依實際情況包含或省去某些模組。
Structure Module(結構模組)--->%xhtml-struct.module;,包含HTML文件主要的元素,如:html、head、title和body 。
Text Module(文字模組)--->%xhtml-text.module;,包含文字的基本元素和其內聯元素,如:h1、h2、.. .、strong、span等。
Hypertext Module(超連結模組)--->%xhtml-hypertext.module;,包含用於連結的元素,如:a元素。
List Module(列表模組)--->%xhtml-list.module;,包含用於列表的元素,如:dl、dt、dd、ul、ol和li。
Applet Module(applet模組)--->%xhtml-applet.module;,Java所需元素,如:applet和param。
Presentation Module(表示模組)--->%xhtml-pres.module;,以表示為導向的標記:b、big、hr、I、small、sub、sup和tt。
#Edit Module(編輯模組)--->%xhtml-edit.module;,用於修正的元素,如:del和ins。
#Bidirectional Text Module(文字方向模組)--->%xhtml-bdo.module;,用於指定文字閱讀的方向,如bdo元素。
Basic Forms Module(基本表單模組)--->%xhtml-basic-form.module;,用於HTML 3.2的表單元素,如:form、input、select 、option和textarea。
Forms Module(表單模組)--->%xhtml-form.module;,用於HTML 4.0的表單元素,如:form、input、select、option、textarea 、button、fieldset、label、legend和optgroup。
Basic Tables Module(基本表格模組)--->%xhtml-basic-table.module;,基本的表格元素,如:table、caption、th、tr和td。
Table Module(表格模組)--->%xhtml-table.module;,安全功能的表格支持,如:table、caption、th、tr、td、col 、colgroup、tbody、thead和tfoot。
Image Module(映像模組)--->%xhtml-image.module;,包含img元素。
Client-side Image Map Module(客戶端映像檔模組)--->%xhtml-csismap.module;,包含map和area元素以及支援客戶端映像映像所需要的元素的屬性。
Server-side-Image Map Module(伺服器端映像檔模組)--->%xhtml-ssismap.module;,此模組沒有新增元素,但對img元素新增了一個ismap屬性。
Object Module(物件模組)--->%xhtml-object.module;,用於網頁嵌入可執行內容,如:java程式。
Param Module(參數模組)--->%xhtml-param.module;,網頁中可執行內容中傳遞參數的param元素。
Frames Module(框架模組)--->%xhtml-frames.module;,包含實現框架所需的元素,如:frame、frameset和noframes。
Iframe Module(內嵌框架模組)--->%xhtml-iframe.module;,包含內嵌框架的iframe元素。
Intrinsic Events(固有事件模組)--->%xhtml-events.module;,支援如onSubmit和onFocus等腳本的屬性。
#Meta-information Module(元資訊模組)--->%xhtml-meta.module;,包含meta元素。
#Scripting Module(腳本模組)--->%xhtml-script.module;,支援JavaScript等腳本。
Stylesheet Module(樣式表模組)--->%xhtml-style.module;,用於定義CSS的style元素。
Link Module(連結模組)--->%xhtml-link.module;,指定外部文件,如樣式表、庫等關係的link元素。
Base Modue(基模組)--->%xhtml-base.module;,包含base元素,指定解析相對URL所參考的基底URL。
#Target Module(目標模組)--->%xhtml-target.module;,用於指定目標架構或框架中某一視窗的target屬性。
Style Attribute Module(樣式屬性模組)--->%xhtml-inlstyle.module;,將CSS樣式套用於文件中單一元素的style屬性。
#Name Identification Module(姓名識別模組)--->%xhtml-nameident.module;,name屬性是id屬性的早期版本,現在不建議使用。
Legacy Module(傳統模組)--->%xhtml-legacy.module;,不建議使用的元素和屬性,如:basefont、center、fonts、strike和u元素。
Ruby Module(Ruby模組)--->%xhtml-ruby.module;,東亞文本中用於將少量文本放於正文文本旁的ruby、rbc、rtc 、rb、rt和rp元素,一般用來指示發音。
以上是XML入門教學:詳細介紹XHTM模組的詳細內容。更多資訊請關注PHP中文網其他相關文章!