溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

html中的dtd是什么意思

發(fā)布時(shí)間:2021-12-04 09:36:18 來源:億速云 閱讀:204 作者:iii 欄目:web開發(fā)

這篇文章主要介紹“html中的dtd是什么意思”,在日常操作中,相信很多人在html中的dtd是什么意思問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對(duì)大家解答”html中的dtd是什么意思”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!

在html中,DTD指的是“文檔類型定義”,是一套關(guān)于標(biāo)記符的語法規(guī)則,是html文件的驗(yàn)證機(jī)制,屬于html文件組成的一部分。DTD可定義合法的XML文檔構(gòu)建模塊,它使用一系列合法的元素來定義文檔的結(jié)構(gòu)。

本教程操作環(huán)境:windows7系統(tǒng)、HTML5版、Dell G3電腦。

文檔類型定義(DTD)是一套關(guān)于標(biāo)記符的語法規(guī)則。它是XML1.0版規(guī)格得一部分,是html文件的驗(yàn)證機(jī)制,屬于html文件組成的一部分。

DTD可定義合法的XML文檔構(gòu)建模塊。它使用一系列合法的元素來定義文檔的結(jié)構(gòu)。

DTD 可被成行地聲明于 XML 文檔中,也可作為一個(gè)外部引用。

內(nèi)部的 DOCTYPE 聲明

假如 DTD 被包含在您的 XML 源文件中,它應(yīng)當(dāng)通過下面的語法包裝在一個(gè) DOCTYPE 聲明中:

<!DOCTYPE root-element [element-declarations]>

帶有 DTD 的 XML 文檔實(shí)例(請(qǐng)?jiān)?IE5 以及更高的版本打開,并選擇查看源代碼):

<?xml version="1.0"?>
<!DOCTYPE note [
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
]>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend</body>
</note>

在您的瀏覽器中打開此 XML 文件,并選擇"查看源代碼"命令。

以上 DTD 解釋如下:

  • !DOCTYPE note (第二行)定義此文檔是 note 類型的文檔。

  • !ELEMENT note (第三行)定義 note 元素有四個(gè)元素:"to、from、heading,、body"

  • !ELEMENT to (第四行)定義 to 元素為 "#PCDATA" 類型

  • !ELEMENT from (第五行)定義 from 元素為 "#PCDATA" 類型

  • !ELEMENT heading (第六行)定義 heading 元素為 "#PCDATA" 類型

  • !ELEMENT body (第七行)定義 body 元素為 "#PCDATA" 類型

外部文檔聲明

假如 DTD 位于 XML 源文件的外部,那么它應(yīng)通過下面的語法被封裝在一個(gè) DOCTYPE 定義中:

<!DOCTYPE root-element SYSTEM "filename">

這個(gè) XML 文檔和上面的 XML 文檔相同,但是擁有一個(gè)外部的 DTD: (點(diǎn)擊打開該文件,并選擇"查看源代碼"命令。)

<?xml version="1.0"?>
<!DOCTYPE note SYSTEM "note.dtd">
<note>
  <to>Tove</to>
  <from>Jani</from>
  <heading>Reminder</heading>
  <body>Don't forget me this weekend!</body>
</note>

這是包含 DTD 的 "note.dtd" 文件:

<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>

為什么使用 DTD?

  • 通過 DTD,您的每一個(gè) XML 文件均可攜帶一個(gè)有關(guān)其自身格式的描述。

  • 通過 DTD,獨(dú)立的團(tuán)體可一致地使用某個(gè)標(biāo)準(zhǔn)的 DTD 來交換數(shù)據(jù)。

  • 而您的應(yīng)用程序也可使用某個(gè)標(biāo)準(zhǔn)的 DTD 來驗(yàn)證從外部接收到的數(shù)據(jù)。

  • 您還可以使用 DTD 來驗(yàn)證您自身的數(shù)據(jù)。

DTD有三種文檔類型:S(Strict)、T(Transitional)、F(Frameset)。

  • Strict:如果您需要干凈的標(biāo)記,免于表現(xiàn)層的混亂,請(qǐng)使用此類型。請(qǐng)與層疊樣式表(CSS)配合使用

  • Transitional:DTD 可包含 W3C 所期望移入樣式表的呈現(xiàn)屬性和元素。如果您的讀者使用了不支持層疊樣式表(CSS)的瀏覽器以至于您不得不使用 HTML 的呈現(xiàn)特性時(shí)使用

  • Frameset: DTD 應(yīng)當(dāng)被用于帶有框架的文檔。除 frameset 元素取代了 body 元素之外,F(xiàn)rameset DTD 等同于 Transitional DTD

html5基本上沒有XHTML 1.0 Transitional嚴(yán)格的要求,并且簡化了很多東西可以直接使用 <!DOCTYPE HTML>

到此,關(guān)于“html中的dtd是什么意思”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI