2010-10-14 105 views
3

可能重複:
HTML: What is the functionality of !DOCTYPE什麼使用<!DOCTYPE >?

我是.asp的Web開發人員作爲一個初學者,

我找到了很多文章,但我沒有得到完整的想法..

1.what the使用<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

2.我的經典asp頁面有什麼需要使用它嗎?

回答

-3

DOCTYPE是不需要的,這是一個網頁(不ASP,PHP或其他)的可選元素,只有幫助瀏覽器渲染和使用正確的渲染模式。

doctype聲明不是HTML標記;它是什麼版本的標記語言的網頁上寫的是Web瀏覽器的指令。

至於你提到你是一個初學者,HTML代碼(即在任何Web瀏覽器提供的代碼)分爲2個主要區域。

<html> 
    <head> 
     // Everything here is to help the browser to display the correct design 
    </head> 

    <body> 
     // Everything here will show in the user display 
    </body> 
</html> 

被添加adove的<html>標籤代表「嘿瀏覽器,這我怎麼做我的代碼,請點擊此類型的標準」

這是一樣的,你看到一個海軍軍官的<doctype>它肩上的專利......這是一個可選擇的東西(在公民世界),但如果你看到有人穿着它,你對這個人的態度將會非常不同,許多你不會說:「Wazz」起來「,但」你怎麼做「。

這完全是關於標準。


<doctype>它僅配備了更多的方式呈現在用戶的瀏覽器同樣的事情重要的是,在1990年,我們知道一切都<html>並有<br><br />,沒有什麼區別,甚至在今天,瀏覽器渲染引擎做不在乎打破空間標籤,但其他的力量,爲<img alt="" src="" ><img alt="" src="" />

然後,有HTMLXHTML之間的區別,雖然他們是一種XML語言的變種,XHTML是更加限制一nd,例如,所有標籤都需要關閉,所以您需要編寫<br/>

我希望我可以幫助你做出的<doctype>標籤:)

+0

doctype不需要?你真的告訴一個初學者,doctype是不需要的?來吧 ! – 2010-10-14 08:34:57

+0

這是一個可選元素!這不是必需的,閱讀文檔! Latests瀏覽器會自動選擇使用的代碼來使用DTD。這完全是關於驗證,而不是渲染,我可以讓你成爲一個頁面,在沒有任何''的情況下,以任何瀏覽器呈現。 – balexandre 2010-10-14 08:35:27

+0

我剛剛閱讀文檔。當w3c說「不要忘記」時,我不認爲它是可選的。當你使用網絡技術時,你永遠不會認爲每個人都是最新的瀏覽器,你認爲他們都在iE6下。 – 2010-10-14 08:52:58

4

doctype告訴瀏覽器使用什麼版本的html來呈現頁面。例如,如果您使用xhtml strict,則不會使用/>關閉元標記會導致頁面無法驗證。

所以基本上,它讓瀏覽器知道渲染頁面時要使用哪些規則。

編輯:該doctype將呈現在xhtml過渡頁面。我是一名PHP開發人員,但我認爲你需要在你的ASP中包含doctype。

+2

嗯,有點。文檔的文檔類型描述了文檔對任何解釋器的元素和屬性規則,但它在很大程度上被瀏覽器忽略,但有一個例外:「現代」文檔類型的存在觸發「標準」模式,而較舊或缺失的文檔類型會觸發「怪癖」模式,通常只會影響瀏覽器的默認CSS規則。例如,在HTML4和XHTML之間切換doctype不會導致瀏覽器以不同的方式解析HTML。但是用HTML mime類型發送文檔在大多數瀏覽器中會觸發與XML(或XHTML)mime類型不同的呈現。 – eyelidlessness 2010-10-14 08:23:10

+0

感謝您更正眼瞼無力,我一直認爲它在瀏覽器上比實際上更有影響力。 – Olical 2010-10-14 14:42:46

+1

一些澄清,因爲我寫了我的最後一個評論匆忙和疲憊。切換到「quirks」模式可能會改變DOM樹從HTML中被解析的方式,以及可用的Javascript和CSS功能。在IE中,這是最明顯的,還有一個額外的變化:盒子模型改變了。 IE的「怪癖」模式基本上是IE 5.5渲染引擎(意思是從6開始,IE保持了5.5兼容模式; 8開啓將所有以前版本的模式恢復到5.5 *,除了* 6),其中使用了不同的盒子模型。 – eyelidlessness 2010-10-14 18:27:07

3

Doctype告訴瀏覽器您正在使用哪個版本的html。

http://www.w3schools.com/tags/tag_doctype.asp

這真的很重要因爲你的瀏覽器將不會做同樣的事情用相同的HTML代碼。尊重文檔類型是很重要的:

  • SEO的觀點,機器人是用來閱讀你的html代碼,所以它更好,它是完美的。

  • 瀏覽器會更好,更快地完成渲染。

  • 如果你不尊重規則,你會有一些奇怪的錯誤。

文檔類型是有關客戶端,所以它不會有什麼與你的服務器端技術:

客戶:使用Javascript/CSS/HTML

服務器:PHP/ASP/asp.net/java

如果你是初學者,你必須很好地理解這一點。你必須學習雙方,並嘗試獨立學習。

2

是的,你確實需要一個DOCTYPE某種意義上說 - 有一個強制應用某些規則的HTML佈局瀏覽器。如果你沒有,瀏覽器將使用默認模式進行渲染,這對於不同的瀏覽器是不同的,這意味着你的頁面在某些瀏覽器中看起來是錯誤的。如果您指定了文檔類型,則可以(大部分)忘記該問題。

大約有六,七的doctype常用的,但說實話使用這些天最好的一個就是HTML5的doctype:

<!DOCTYPE html> 

是的,它的那樣簡單 - 你不」 t需要doctype中的任何其他垃圾;只是。這足以強制所有瀏覽器進入最新的符合標準的模式。

+0

IE(不是9)的行爲有點愚蠢與這樣的''雖然他們很快趕上9 eheh :) – balexandre 2010-10-14 08:52:05

0

指定DOCTYPE還有助於減少不同主流瀏覽器之間的不一致性。這是專業網站開發中的一個重要因素,但請注意,指定DOCTYPE並不總是確保瀏覽器遵循所有規則。瀏覽器只會盡力遵循它的內容,直到您發現您仍需要其他行爲的解決方法。

至於是否有「需要」的問題,如果您正在創建專業網站或許多人使用的系統,答案是肯定的。但如果你只是爲了娛樂或家庭作業或學校練習而做它,那麼它只是Web開發中最佳實踐列表的一部分。但是,我強烈建議,即使作爲初學者,現在也開始將DOCTYPE合併到您的網頁中。

0

這是更多的HTML問題,如果您在跳入編程經典asp生成html之前有更多經驗製作靜態html文件,您會遇到這個問題。

  1. 不同的doctypes可能會給你不同的結果在你的html佈局。 參考:http://www.w3schools.com/tags/tag_doctype.asp

  2. 你需要它。沒有文檔類型的html頁面將默認使用老派怪癖模式,這可能會讓人感到沮喪,以後可以使用。

希望這有助於!

相關問題