Finora abbiamo tralasciato l'analisi della prima riga di una pagina HTML (quella che consente di specificare di che tipo di documento si tratta). Il <!DOCTYPE> assume un aspetto di questo genere:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" http://www.w3.org/TR/html4/loose.dtd>
Questa riga fornisce alcune informazioni sul documento:
Elemento | Descrizione |
---|---|
HTML |
il tipo di linguaggio utilizzato è l'HTML |
PUBLIC |
il documento è pubblico |
W3C |
il documento fa riferimento alle specifiche rilasciate dal W3C |
- |
(è il segno "meno") le specifiche non sono registrate all'ISO (organizzazione di standardizzazione nternazionale). Se lo fossero state, ci sarebbe stato un "+" |
DTD HTML 4.01 Transitional |
il documento fa riferimento a una DTD ("Document Type Definition" cioè "Definizione del tipo di documento"); la versione di HTML supportata è la 4.01 "transitional" |
EN |
la lingua con cui è scritta la DTD è l'inglese |
Inoltre, se necessario, è possibile specificare l'indirizzo di riferimento a cui è possibile trovare la DTD: per l'HTML non lo si fa quasi mai, perché gli URL a cui trovare la documentazione sono universalmente noti.
Per quel che riguarda l'HTML le indicazioni possibili sono tre:
- Strict: è una DTD particolarmente rigorosa: esclude ogni elemento che riguarda il layout (la cui formattazione è affidata all'utilzzo dei CSS) e non è consentito l'uso degli elementi deprecati:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN"
http://www.w3.org/TR/html4/strict.dtd> - Transitional: è una versione temporanea, per consentire il passaggio da una specifica all'altra. Nella DTD transitionali tag deprecati sono ammeesi. Questa DTD andrà bene nella maggior parte dei casi:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
http://www.w3.org/TR/html4/loose.dtd> - Frameset. È la DTD che riguarda i frames:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
http://www.w3.org/TR/html4/frameset.dtd>
Nelle ultime versioni il tipo di <!DOCTYPE>
utilizzato influisce sulla visualizzazione della pagina da parte del browser. Tale tecnica, chiamata <!DOCTYPE> switch, è una delle principali cause di visualizzazione delle pagine sul Web.
A questo argomento HTML.it ha dedicato un lungo e dettagliato approfondimento nell'articolo «Il <!DOCTYPE> ed il <!DOCTYPE> switch nei moderni browser»