2015-09-14 10 views
5

Supponiamo, come esempio, il seguente esatto test.html documento, salvato nella codifica UTF-8:Come determinare il doctype se nessuno è stato impostato nel documento?

<html> 
<head> 
    <title>Test</title> 
</head> 
<body> 
    Test document. 
</body> 
</html> 

Come è possibile determinare in IE11 e Chrome ultima ciò che il browser ha deciso di indovinare per un DOCTYPE, se qualunque? (Si noti che il documento di cui sopra è solo un esempio , sto cercando un metodoper determinare DOCTYPE come ipotizzato dal browser, non è una risposta a questa istanza. (Insegnami a pescare!))

Ho cercato e trovato this related question dove le risposte menzionano document.doctype, ma questo è null in Chrome e undefined in IE11. Ho anche provato tutti i tipi di altre ricerche, ad esempio this one, ma questo risulta solo nei post su con un doctype corretto.

Ho utilizzato gli strumenti di sviluppo di Chrome e IE11 ma non l'ho trovato (forse non l'ho visto).

Ho esaminato attentamente tutte le domande duplicate suggerite su Stack Overflow, così come le "Domande simili" nella barra laterale, ma nessuno ha risposto alla mia domanda.

Riga inferiore: può JavaScript (preferito) o gli strumenti di sviluppo del browser possono essere utilizzati per scoprire quale modalità documento è stata assunta? O ci sono specifiche o regole conosciute per questo?

+0

Se assumiamo che se il 'document.doctype' è null/undefined non è stato impostato nessun doctype, in tal caso il browser entra in" Quirks Mode ", che darà risultati molto imprevedibili in ogni tipo di browser – LGSon

risposta

6

Risposta breve: se non viene specificato doctype, non è disponibile alcun doctype.


Secondo this answer, i browser non assumono un doctype, ma piuttosto entrano in una "quirks mode":

Il metodo usuale di impostare quirks mode non è non comprendere un DOCTYPE, o includere contenuti prima del doctype.

(Leggi la risposta completa per un confronto tra the three basic modes.)

È possibile trovare una panoramica sulle diverse DOCTYPE e quali modalità essi innescare on Wikipedia. Conferma che tutti i browser entrano in una modalità strane se non è presente alcun doctype.

This thread contiene informazioni su come verificare se un browser è in modalità strane, principalmente controllando document.compatMode.

Problemi correlati