webForumDet fria alternativet

Om doctype ej är angett hur tolkar webbläsaren koden då?

HTML & CSS

5 svar · 400 visningar · startad av Addeladde

Medlem sedan jan. 20013 406 inlägg
Frågan#1

Hej

Ställer inte webbläsaren automatiskt in en doctype om det inte finns någon specificerad i koden på sidan. Hur ser i så fall den doctypen ut?

Medlem sedan dec. 20042 245 inlägg
#2

Webbläsare använder inte SGML-tolkar för text/html utan de använder "tagg-soppa"-tolkar. Webbläsare behöver ingen doctype för att kunna tolka HTML.

Mozilla iaf gör först en sniffning av de första 1024 byten i koden för att se vilket läge den ska tolka dokumentet: i quirks mode eller standards mode. Om du inte har någon doctype kommer dokumentet tolkas i quirks mode.

Om det saknas en doctype i koden kommer det inte finnas någon DocumentType node i DOM-trädet, document.doctype är null.

I IE finns det dock aldrig någon DocumentType node och document.doctype är alltid null, eftersom IE tolkar doctypen ungefär som om det vore en kommentar.

Medlem sedan jan. 20013 406 inlägg
#3

OM jag vill sätta så att sidan körs i quiks-mode direkt. Vad skriver jag då?

Medlem sedan dec. 20042 245 inlägg
#4

Ingenting? :) Eller en doctype som triggar quirks mode, tex:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
Medlem sedan aug. 20039 340 inlägg
#5

zcorpan skrev:

I IE finns det dock aldrig någon DocumentType node och document.doctype är alltid null, eftersom IE tolkar doctypen ungefär som om det vore en kommentar.

Ur DOM-synpunkt: Ja.
Or renderingssynpunkt, nej. IE är beroende av rätt doctype i vissa lägen för att rendera med box model.

Medlem sedan jan. 20013 406 inlägg
#6

Tack för svaren

278 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
145 ms — hämta tråd, inlägg och bilagor (db)
130 ms — ändringar (db)