DOCTYPE html PUBLIC 指定了 HTML 文档遵循的文档类型定义
DOCTYPE html PUBLIC 指定了 HTML 文檔遵循的文檔類型定義??
今天看到一篇CSS應用的一個友好搜索,我按網頁上的代碼復制、粘貼后預覽時總達不到效果,而直接拷貝他的實例卻能達到效果,開始以為書寫順序不對,于是調整書寫順序,還是不行,最后找到了我認為最沒什么用處的第一行才發現真正起作用的竟然是
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional //EN" "http//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">暈,這還真重要.網上搜搜,查出下面的資料.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml">?手機上用的是:
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">?
到底有什么用?
我只是記得這是用來聲明文檔類型的,具體的含義和作用忘記了。百度一下之后,分享出來。
XHTML 是 HTML 的改造和升級版。W3C 的 XHTML 1.0 規范在這里:
http://www.w3.org/TR/xhtml1/
W3C 目前正在制定 XHTML 2.0 規范:
http://www.w3.org/TR/xhtml2/
XHTML 1.0 所做的工作就是將 HTML 4.0(最后的 HTML 版本)按照符合 XML 標準的要求加以改造。XHTML 1.0 并未定義任何新的元素和屬性,而是沿用了所有 HTML 4.0 的元素和屬性,因此 XHTML 1.0 與 HTML 4.0 是完全兼容的。傳統的 Web 開發者/設計師非常容易掌握 XHTML 1.0。目前所有主流的桌面瀏覽器都已經可以很好地支持 XHTML 1.0,甚至很多移動智能設備(智能手機、PDA 等等)中的瀏覽器也已經可以很好地支持 XHTML 1.0。 XHTML 2.0 對于 XHTML 1.0 做了很大的改進,很多地方甚至與 XHTML 1.0 不兼容。由于目前主流的瀏覽器僅僅只能支持 XHTML 1.0,因此我們這里的討論將限制在 XHTML 1.0 的范圍內。
--以上都是廢話!
既然 XHTML 1.0 對于 HTML 4.0 做了改造,那么必然對于頁面提出了一些新的要求,這些新的要求包括
1. 必須在頁面最頂部加上 DOCTYPE 的聲明。如果不加這個聲明,瀏覽器就會按照 HTML 4.0 的方式來處理,而不把頁面當作 XHTML 處理。
HTML is the publishing language of the World Wide Web.?
html 是當前互聯網被普遍采用的頁面描述語言,被瀏覽器解釋并形成最終網頁頁面。?
xhtml與html相似,但是其文檔是兩夠的xml文檔,因此更為整齊、標準化、易于處理和交流、易于擴展。
XHTML 1.0 的 DOCTYPE 聲明有 3 種,分別對應 3 種不同的 DTD。
Transitional —— 最寬松的 DTD,可以使用帶表現含義的標簽和屬性。
寫法為: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">Strict —— 最嚴格的 DTD,不允許使用任何帶表現含義的標簽和屬性。
寫法為: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">Frameset —— 用于使用了 frame 的頁面(即,包含有 <frameset> 標記)。
寫法為: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
在剛剛開始向 XHTML 遷移的過程中,可以使用 Transitional 的 DTD,當習慣了更好的頁面開發方法后,可以轉向使用 Strict 的 DTD。只有在需要用到 frame 的頁面,才應該使用 Frameset 的 DTD。
?
2. 緊跟在上面 DOCTYPE 聲明之后的是一個 XHTML 名字空間(namespace)聲明,放在增強的 <html> 元素中,寫法為:
<html xmlns="http://www.w3.org/1999/xhtml">3. 由于 XHTML 1.0 頁面就是合法的 XML 文檔,而 XML 對于標簽和屬性都是區分大小寫的,為了簡單起見,XHTML 1.0 頁面中所有的標簽和屬性都必須使用小寫。
一些免費的工具,例如 HTML Tidy(http://tidy.sourceforge.net/),可以幫助你把標簽和屬性自動轉換為小寫。4. 通過在 <head> 元素中添加一個 <meta> 元素來聲明頁面中使用的語言。
<meta http-equiv="Content-Type" content="text/html; charset=gbk" />?
5. 在 XHTML 中,所有的屬性都必須要加上引號。
一些免費的工具,例如 HTML Tidy(http://tidy.sourceforge.net/),可以幫助你自動為所有的屬性加上引號。6. 在 XHTML 中,所有的屬性都必須有值。
不能像在 HTML 4.0 中那樣寫: <input type="checkbox" name="shirt" value="medium" checked>?
而要寫成: <input type="checkbox" name="shirt" value="medium" checked="checked" />?
7. 在 XHTML 中,所有的標簽都必須關閉。
關閉標簽有兩種方式,包含內容的標簽使用結束標簽關閉,空標簽在后面加上空格和“/”。例如: <p>This is acceptable HTML and it is also valid XHTML.</p><img src="logo.gif" />?
8. 不要在注釋內容中使用“--” 。
“--” 只能使用在 XHTML 注釋的開頭和結束,不能出現在注釋的內容中。下面的寫法都是不允許的: <!--Invalid -- and so is the classic "separator" below. --><!------------------------------------>?
9. 把所有的特殊符號編碼。
< = &lt;> = &gt;& = &amp;?
W3C 的 XHTML/CSS/DOM 這 3 個規范構成了一個完整而嚴密的體系,我稱這 3 個規范為 Web 世界中“三位一體神的化身”。這 3 個規范分別代表了 Web 頁面的 structure(結構)、presentation(表現)和 behaviour(行為) 3 部分。將 Web 頁面嚴格分為這 3 層,并且盡量使每一層的內容相互獨立,有助于提高頁面的可重用性和模塊化程度,大幅降低頁面制作、維護和修改的成本。為了達到上述分層的目標,編寫的 XHTML 中應該只包含與 structure 相關的標記(元素和屬性)。因此應該習慣于使用 Strict 類型的 DTD,盡快摒棄那些帶有表現含意的標記(這些標記在 HTML 4.0 規范中被標識為 Deprecated 即“不提倡”,并且會在 XHTML 以后的版本中被完全舍棄);盡快摒棄基于 table 做布局的老方法,采用完全的 CSS 布局。
附:推薦的 XHTML 相關書籍。
那么為什么要遵循規范?這些規范能給我們帶來什么樣的好處?
標準重構是個新名詞,對于大部分企業來講,還不知道是什么含義,我們這里無須把這個名詞解釋的多么的深奧,為什么要用標準重構呢?采用網站標準有什么好處?
對網站瀏覽者的好處:
文件下載與頁面顯示速度更快;?
內容能被更多的用戶所訪問(包括失明、視弱、色盲等殘障人士);?
內容能被更廣泛的設備所訪問(包括屏幕閱讀機、手持設備、搜索機器人、打印機、電冰箱等等) ;
用戶能夠通過樣式選擇定制自己的表現界面 ;
所有頁面都能提供適于打印的版本 ;
對網站所有者的好處:
更少的代碼和組件,容易維護,帶寬要求降低(代碼更簡潔),成本降低。舉個例子:當 ESPN.com 使用 CSS改版后,每天節約超過兩兆字節(terabytes)的帶寬。?
更容易被搜尋引擎搜索到 ;
改版方便,不需要變動頁面內容 ;
提供打印版本而不需要復制內容 ;
提高網站易用性。在美國,有嚴格的法律條款(Section 508)來約束政府網站必須達到一定的易用性,其他國家也有類似的要求
來自:http://jdiqssu.blog.163.com/blog/static/666413942009916822833/
超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生總結
以上是生活随笔為你收集整理的DOCTYPE html PUBLIC 指定了 HTML 文档遵循的文档类型定义的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IBM DS4800控制器更换和电池误告
- 下一篇: Android多线程研究(1)——线程基