HTML高級教程聲明_XHTML教程
教程Tag:暫無Tag,歡迎添加,賺取U幣!
在你每一個(gè)頁面的頂端,你需要文檔聲明。是的,必須。
假如不指定文檔類型,你的HTML不是合法的HTML,并且大部分瀏覽器會用“怪癖模式(quirks mode)”來處理頁面,這意味著瀏覽器認(rèn)為你自己也不知道究竟做什么,并且按瀏覽器自己的方式來處理你的代碼。你可以是一個(gè)HTML大師,在地球上打遍天下無敵手,或者你的HTML可以無瑕疵,CSS可以很完美,但假如沒有文檔聲明,或者錯(cuò)誤的文檔聲明,你的網(wǎng)頁與一個(gè)短視的,獨(dú)眼的長臂猿嬰兒十分艱難地堆砌起來的沒兩樣。
XHTML 1.0 Strict(嚴(yán)格)的文檔聲明是這樣的:
下面的是XHTML 1.1的文檔聲明,作為XHTML的最新版本,看起來更完美,但還是有一些問題,隨后我們會稍微講解……
假如你不愿放棄HTML 4或者你還有Netscape 4死忠用戶,你可以使用XHTML 1.0 Transitional(過渡型):
你使用這的唯一理由是你還要兼容老版本的,少用的瀏覽器。過渡型XHTML 1.0答應(yīng)HTML 4的表現(xiàn)元素,其也可能在如Netscape 4的瀏覽器中表現(xiàn)更好。但使用這些元素將對你網(wǎng)頁的效率和可用性有害。
最后,假如你是使用框架的怪人之一,可以使用像下面一樣的XHTML 1.0 Frameset(框架)文檔類型聲明:
注重DOCTYPE標(biāo)簽必須大寫和前置一個(gè)英文半角感嘆號!。它是唯一一個(gè)打破規(guī)則的標(biāo)簽,它不需要關(guān)閉。
語言聲明
即使HTTP頭或者在html起始標(biāo)簽內(nèi)設(shè)置了xml:lang屬性,你也必須為文檔指定一個(gè)主要語言。盡管處理一個(gè)合法的XHTML文檔這不是必須的,但也是一個(gè)易用性的考慮。值是縮寫的,比如en(English,英語),fr(French,法語),de(German,德語)或者mg(Malagasy,這是什么語?譯者也不知道,呵呵。——譯者注)。
聲明一個(gè)主要用英語內(nèi)容的文檔,例子是這樣的:
在聲明主要語言之后,假如還需要使用其他語言,你還可以在內(nèi)聯(lián)中使用xml:lang屬性(比如<span xml:lang="de">HTML Hund</span>)。
內(nèi)容類型
HTML文檔的媒體類型和字體集也許要指定,可以使用HTTP頭來完成,比如:
HTTP頭部的第一部分(如text/html)是文件MIME類型,讓瀏覽器知道文件的媒體類型因此可以知道怎么處理。所有的文件都有MIME類型。JPEG圖像是image/jpeg,CSS文件是text/csss和HTML一般使用text/html。
HTTP頭部的第二部分(如UTF-8部分)是字符集。
也許設(shè)置HTTP頭的最簡易方法是在HTML中使用“HTTP同義(HTTP-equivalent)”的頭標(biāo)簽,像這樣:
些微復(fù)雜當(dāng)更好的方法是使用服務(wù)器端腳本語言來發(fā)送頭。用PHP的話,你可以這樣做:
假如你不愿意(或不能)使用服務(wù)器端腳本語言,你也許可以直接給服務(wù)器設(shè)置一個(gè)“.htaccess”文件。大部分服務(wù)器(Apache兼容)可以在根目錄使用一個(gè)“.htaccess”的小文本文件,寫入下面的內(nèi)容,你就可以把所有的“html”后綴文件都與MIME類型和字符集關(guān)聯(lián):
字符集包括大部分西方基于拉丁文語言的“ISO-8859-1”,日語的“SHIFT_JIS”,中文的“GB18030”和UTF-8,一個(gè) Unicode Transformation Format版本,提供大范圍的多種語言的單個(gè)字符。基本上,你應(yīng)該使用一個(gè)你知道的,能為你用戶清楚認(rèn)知的字符集。除非你使用基于拉丁語的語言(包括英語)(ISO-8859-1被普遍接受的),你應(yīng)該使用UTF-8因?yàn)樗梢燥@示大多數(shù)語言的大多數(shù)字符,使用它也是安全的,因?yàn)樗梢栽诖蟛康挠?jì)算機(jī)上使用。
關(guān)于更多你可以閱讀elsewhere on the web。
注重
XHTML應(yīng)該當(dāng)作application/xhtml xml的MIME類型來使用,再清楚不過,這是XML程序。不幸的是,大部分瀏覽器沒有對這沒有第一線索。所以,一般認(rèn)為使用text/html的MIME類型是不錯(cuò)的。根據(jù)W3C的建議和網(wǎng)頁標(biāo)準(zhǔn)工程的未來亮點(diǎn),調(diào)味的XHTML 1.0也許可以作text/html使用,但XHTML 1.1不應(yīng)該,這就是這個(gè)網(wǎng)站以XHTML 1.0 Strict(嚴(yán)格)作為例子,假定text/html的MIME類型。但是你仍然可以(或許不應(yīng)該)為它們設(shè)置正確的MIME類型給瀏覽器,稍微的調(diào)用一下服務(wù)器端即可。
這個(gè)網(wǎng)站使用PHP為XHTML 1.1設(shè)置application/xhtml xml的MIME類型給那些能夠理解和處理這個(gè)類型的瀏覽器(如Mozilla),為XHTML 1.0 Strict設(shè)置text/html給其他瀏覽器(如IE)。為每一個(gè)頁面的頂部加入如下代碼:
這些檢查核實(shí)瀏覽器是否接受application/xhtml xml的MIME類型,假如接受,就發(fā)送這個(gè)MIME類型并把XHTML 1.1文類類型寫到HTML中。假如這個(gè)MIME類型不被接受,就發(fā)送text/html的MIME類型并把XHTML 1.0 Strict(嚴(yán)格)的文檔類型寫入HTML。
除了你知道你正在做著正確的事情和為自己預(yù)備將來的路的平和想法外,最直接的益處就是,使用這個(gè)方法,Mozilla瀏覽器把你的文件當(dāng)作XML程序?qū)Υ⑶壹偃缒愕腦HTML還沒有抓癢,就是說不合式的,Mozilla就不會工作。然后你就可以排錯(cuò)了,而不需要用校驗(yàn)器來運(yùn)行你的文檔了。
假如不指定文檔類型,你的HTML不是合法的HTML,并且大部分瀏覽器會用“怪癖模式(quirks mode)”來處理頁面,這意味著瀏覽器認(rèn)為你自己也不知道究竟做什么,并且按瀏覽器自己的方式來處理你的代碼。你可以是一個(gè)HTML大師,在地球上打遍天下無敵手,或者你的HTML可以無瑕疵,CSS可以很完美,但假如沒有文檔聲明,或者錯(cuò)誤的文檔聲明,你的網(wǎng)頁與一個(gè)短視的,獨(dú)眼的長臂猿嬰兒十分艱難地堆砌起來的沒兩樣。
XHTML 1.0 Strict(嚴(yán)格)的文檔聲明是這樣的:
示例代碼 [www.ghpqjb.com]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
下面的是XHTML 1.1的文檔聲明,作為XHTML的最新版本,看起來更完美,但還是有一些問題,隨后我們會稍微講解……
示例代碼 [www.ghpqjb.com]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
假如你不愿放棄HTML 4或者你還有Netscape 4死忠用戶,你可以使用XHTML 1.0 Transitional(過渡型):
示例代碼 [www.ghpqjb.com]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
你使用這的唯一理由是你還要兼容老版本的,少用的瀏覽器。過渡型XHTML 1.0答應(yīng)HTML 4的表現(xiàn)元素,其也可能在如Netscape 4的瀏覽器中表現(xiàn)更好。但使用這些元素將對你網(wǎng)頁的效率和可用性有害。
最后,假如你是使用框架的怪人之一,可以使用像下面一樣的XHTML 1.0 Frameset(框架)文檔類型聲明:
示例代碼 [www.ghpqjb.com]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
注重DOCTYPE標(biāo)簽必須大寫和前置一個(gè)英文半角感嘆號!。它是唯一一個(gè)打破規(guī)則的標(biāo)簽,它不需要關(guān)閉。
語言聲明
即使HTTP頭或者在html起始標(biāo)簽內(nèi)設(shè)置了xml:lang屬性,你也必須為文檔指定一個(gè)主要語言。盡管處理一個(gè)合法的XHTML文檔這不是必須的,但也是一個(gè)易用性的考慮。值是縮寫的,比如en(English,英語),fr(French,法語),de(German,德語)或者mg(Malagasy,這是什么語?譯者也不知道,呵呵。——譯者注)。
聲明一個(gè)主要用英語內(nèi)容的文檔,例子是這樣的:
示例代碼 [www.ghpqjb.com]
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
在聲明主要語言之后,假如還需要使用其他語言,你還可以在內(nèi)聯(lián)中使用xml:lang屬性(比如<span xml:lang="de">HTML Hund</span>)。
內(nèi)容類型
HTML文檔的媒體類型和字體集也許要指定,可以使用HTTP頭來完成,比如:
示例代碼 [www.ghpqjb.com]
Content-Type: text/html; charset=UTF-8
HTTP頭部的第一部分(如text/html)是文件MIME類型,讓瀏覽器知道文件的媒體類型因此可以知道怎么處理。所有的文件都有MIME類型。JPEG圖像是image/jpeg,CSS文件是text/csss和HTML一般使用text/html。
HTTP頭部的第二部分(如UTF-8部分)是字符集。
也許設(shè)置HTTP頭的最簡易方法是在HTML中使用“HTTP同義(HTTP-equivalent)”的頭標(biāo)簽,像這樣:
示例代碼 [www.ghpqjb.com]
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
些微復(fù)雜當(dāng)更好的方法是使用服務(wù)器端腳本語言來發(fā)送頭。用PHP的話,你可以這樣做:
示例代碼 [www.ghpqjb.com]
<? header("Content-Type: text/html; charset= UTF-8"); ?>
假如你不愿意(或不能)使用服務(wù)器端腳本語言,你也許可以直接給服務(wù)器設(shè)置一個(gè)“.htaccess”文件。大部分服務(wù)器(Apache兼容)可以在根目錄使用一個(gè)“.htaccess”的小文本文件,寫入下面的內(nèi)容,你就可以把所有的“html”后綴文件都與MIME類型和字符集關(guān)聯(lián):
示例代碼 [www.ghpqjb.com]
AddType text/html;charset=UTF-8 html
字符集包括大部分西方基于拉丁文語言的“ISO-8859-1”,日語的“SHIFT_JIS”,中文的“GB18030”和UTF-8,一個(gè) Unicode Transformation Format版本,提供大范圍的多種語言的單個(gè)字符。基本上,你應(yīng)該使用一個(gè)你知道的,能為你用戶清楚認(rèn)知的字符集。除非你使用基于拉丁語的語言(包括英語)(ISO-8859-1被普遍接受的),你應(yīng)該使用UTF-8因?yàn)樗梢燥@示大多數(shù)語言的大多數(shù)字符,使用它也是安全的,因?yàn)樗梢栽诖蟛康挠?jì)算機(jī)上使用。
關(guān)于更多你可以閱讀elsewhere on the web。
注重
XHTML應(yīng)該當(dāng)作application/xhtml xml的MIME類型來使用,再清楚不過,這是XML程序。不幸的是,大部分瀏覽器沒有對這沒有第一線索。所以,一般認(rèn)為使用text/html的MIME類型是不錯(cuò)的。根據(jù)W3C的建議和網(wǎng)頁標(biāo)準(zhǔn)工程的未來亮點(diǎn),調(diào)味的XHTML 1.0也許可以作text/html使用,但XHTML 1.1不應(yīng)該,這就是這個(gè)網(wǎng)站以XHTML 1.0 Strict(嚴(yán)格)作為例子,假定text/html的MIME類型。但是你仍然可以(或許不應(yīng)該)為它們設(shè)置正確的MIME類型給瀏覽器,稍微的調(diào)用一下服務(wù)器端即可。
這個(gè)網(wǎng)站使用PHP為XHTML 1.1設(shè)置application/xhtml xml的MIME類型給那些能夠理解和處理這個(gè)類型的瀏覽器(如Mozilla),為XHTML 1.0 Strict設(shè)置text/html給其他瀏覽器(如IE)。為每一個(gè)頁面的頂部加入如下代碼:
示例代碼 [www.ghpqjb.com]
<? if(stristr($_SERVER["HTTP_ACCEPT"],"application/xhtml xml")){ header("Content-Type: application/xhtml xml; charset=UTF-8"); echo('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">'); } else { header("Content-Type: text/html; charset=UTF-8"); echo ('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">'); } ?>
這些檢查核實(shí)瀏覽器是否接受application/xhtml xml的MIME類型,假如接受,就發(fā)送這個(gè)MIME類型并把XHTML 1.1文類類型寫到HTML中。假如這個(gè)MIME類型不被接受,就發(fā)送text/html的MIME類型并把XHTML 1.0 Strict(嚴(yán)格)的文檔類型寫入HTML。
除了你知道你正在做著正確的事情和為自己預(yù)備將來的路的平和想法外,最直接的益處就是,使用這個(gè)方法,Mozilla瀏覽器把你的文件當(dāng)作XML程序?qū)Υ⑶壹偃缒愕腦HTML還沒有抓癢,就是說不合式的,Mozilla就不會工作。然后你就可以排錯(cuò)了,而不需要用校驗(yàn)器來運(yùn)行你的文檔了。
相關(guān)XHTML教程:
- HTML5 INPUT placeholder及兼容性處理
- HTML表單里的Label標(biāo)簽
- 淺析HTML與javascript中常用編碼
- CSS網(wǎng)頁布局中必須要了解的幾個(gè)XHTML標(biāo)簽
- title和alt 標(biāo)簽介紹及其異同
- 淺析HTML標(biāo)簽strong和em的區(qū)別
- 說說XHTML中的alt屬性和title屬性
- Semantics語義是Html Xhtml是否真正符合標(biāo)準(zhǔn)的重要部分
- 九個(gè)W3C XHTML1.0及CSS標(biāo)準(zhǔn)認(rèn)證需要注意的問題
- 請注意頁面head區(qū)域的編碼是不是規(guī)范
- HTML validate - 驗(yàn)證HTML代碼穿越多重瀏覽器標(biāo)準(zhǔn)
- XHTML具有語義的標(biāo)簽:有關(guān)H1位置的討論
XHTML教程Rss訂閱Div+Css教程搜索
XHTML教程推薦
- 超鏈接圖標(biāo)規(guī)范:提升文章的可閱讀性
- XHTML入門學(xué)習(xí)教程:網(wǎng)頁Head和DTD
- HTML初級教程表單form
- XHTML教程,簡單認(rèn)識XHTML基礎(chǔ)知識
- XHTML入門學(xué)習(xí)教程:XHTML網(wǎng)頁圖片應(yīng)用
- 表格邊框的css語法
- HTML表格標(biāo)記教程(33):單元格的垂直對齊屬性VALIGN
- Semantics語義是Html Xhtml是否真正符合標(biāo)準(zhǔn)的重要部分
- 初學(xué)者接觸HTML了解一些HTML標(biāo)記(2)
- DIV CSS布局基礎(chǔ):HTML標(biāo)記(四)
- 相關(guān)鏈接:
- 教程說明:
XHTML教程-HTML高級教程聲明
。