dtd檔案入門
DTD為英文Document Type Definition,中文意思為“文件類定義”。DTD肩負著兩重任務:一方面它幫助你編寫合法的程式碼,另一方面它讓瀏覽器正確地顯示器程式碼。也許你會問它們居然有這樣的能力?
如是你是一個個網頁製作者,你會很清楚地知道一個HTML文件的基本結構可分為兩個主要部分;
[html] view plaincopy
1.
2.
3.
4.
5. 頭部資訊
6.
7.
8.
9.
10.
11. 可視內容
12.
13.
14.
15.
上面的程式碼你是再熟悉不過的了。但你知道下面的程式碼既是正確的又是錯誤的嗎?
在XHTML中,標記是區分大小寫的,上面的程式碼毫無意義。可在HTML中它是一個居中段落。瀏覽器是怎樣處理這種情況呢?難道瀏覽器認為你寫的是HTML,然後把它作為一個一個居中段落顯示?如是你寫的是XHTML呢,它將是一段不可顯示的程式碼!瀏覽器是怎樣知道你用的是什麼標記語言然後正確對待這段程式碼呢?
這就是DTD的工作了。一個DTD應該放在每一個文件的第一行(包括空白).這樣正確地放置,你的DTD才能告訴瀏覽器的用的是什麼標記語言。在通常情況下,如果你編寫的是正確程式碼,並擁有一個合適的DTD,瀏覽器將會根據W3C的標準顯示你的程式碼。
如果說你沒有使用DTD,你將很難預測瀏覽器是怎樣顯示你的程式碼,僅僅在同一瀏覽器就有不同的顯示效果。儘管你的網頁做得非常飄亮,要是沒有使用DTD,你的努力也是白費的。因此,一個DTD是必不可少的。
如果你正在做網頁,你的DTD應該反映出你用的是什麼標記語言。下面是一個DTD列表,你應該使用其中之一。
- XHTML 1.1
- XHTML1.0 StrictDTD(嚴格的文件類定義):要求嚴格的DTD,你不能使用表現標識和屬性,和CSS一同使用。完整程式碼如下:
/p>
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
- XHTML1.0 TransitionalDTD(過渡的文件類定義):要求非常寬鬆的DTD,它允許你繼續使用HTML4.01的標識(但是要符合xhtml的寫法)。完整程式碼如下:
nbsp; PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- XHTML1.0 FramesetDTD(框架集文件類定義):專門針對框架頁面設計使用的DTD,如果你的頁面中包含有框架,需要採用這種DTD。完整程式碼如下:
/p>
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
- HTML 4.01 Strict DTD(嚴格的文件類定義)不能包含已過時的元素(或屬性)和框架元素。對於使用了這類DTD的文件,使用如下文件宣告:
nbsp;
"http://www.w3.org/TR/html4/strict.dtd">
- HTML 4.01 TransitionalDTD(過渡的文件類定義)能包含已過時的元素和屬性但不能包含框架元素。。對於使用了這類DTD的文件,使用如下文件宣告:
/p>
"http://www.w3.org/TR/html4/loose.dtd">
- HTML 4.01 FramesetDTD(框架集文件類定義)。能包含已過時的元素和框架元素。。對於使用了這類DTD的文件,使用如下文件宣告:
/p>
"http://www.w3.org/TR/html4/frameset.dtd">
- HTML 3.2
- HTML 2.0
下面是一個合法的HTML文件。
[html] view plaincopy
1. nbsp;html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2.
3. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
4.
5.
6.
7.
8.
9. 頭部資訊
10.
11.
12.
13.
14.
15. 可視內容
16.
17.
18.
19.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29900383/viewspace-1698141/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 給XML檔案定義DTDXML
- Hibernate 3.6.1 配置檔案dtd URL改變了
- python 檔案操作入門Python
- git 入門教程之忽略檔案Git
- 入門Kubernetes - YAML檔案YAML
- Linux指令入門-檔案管理Linux
- 密碼檔案及dg入門密碼
- git 入門教程之刪除檔案Git
- nginx 文件地址及配置檔案入門Nginx
- iOS打包.a靜態庫檔案(入門)iOS
- android 入門xml佈局檔案AndroidXML
- 極簡 Node.js 入門 - 3.3 檔案寫入Node.js
- Asp.Net Core入門之配置檔案ASP.NET
- Linux 檔案系統之入門必看!Linux
- babel之配置檔案.babelrc入門詳解Babel
- django入門-靜態檔案-part6Django
- Golang語言檔案操作快速入門篇Golang
- DTD – 元素概述
- Asp.Net Core入門之靜態檔案ASP.NET
- 5分鐘入門MP4檔案格式
- linux入門必學檔案處理命令Linux
- Pr 入門教程如何處理圖片檔案?
- [原創]swf檔案的反編譯入門編譯
- 極簡 Node.js 入門 - 3.2 檔案讀取Node.js
- webpack4入門和多檔案打包嘗試Web
- Python基礎入門(9)- Python檔案操作Python
- 《Flask 入門教程》第 4 章:使用靜態檔案Flask
- Android入門教程 | mmap 檔案對映介紹Android
- 新手入門:淺談Linux的檔案系統Linux
- VS2005入門之多檔案上傳
- 檔案系統 FTP Ubuntu 安裝入門介紹FTPUbuntu
- SpringBoot2.x入門教程:理解配置檔案Spring Boot
- 在 Ubuntu 19.10 上入門 ZFS 檔案系統Ubuntu
- Termux 入門教程:架設手機 Server 下載檔案UXServer
- Python入門教程之檔案讀寫操作知識Python
- QT從入門到入土(三)——檔案的讀寫操作QT
- Nginx配置靜態檔案服務從入門到精通Nginx
- 【Linux入門教程】1 簡介、檔案管理、目錄Linux