Home
  1. Informatica
  2. Creare siti web
  3. Cosa è il Doctype e a cosa serve

Cosa è il Doctype e a cosa serve

Scopriamo quali sono i maggiori Doctype usati nei siti web e quali ci aprono al futuro

Un elenco di tutti i Doctype HTML e XHTML, con le caratteristiche di ognuno e le differenze tra le versioni

    Livello: Iniziale
 

Addentriamoci ora in una pagina HTML. Entriamo nel cantiere di un sito internet e vediamo da vicino come si struttura nei suoi elementi base. Nella lezione precedente abbiamo solo presentato schematicamente le varie parti che compongono una pagina web e come essa appare a un utente esterno. Ecco come un webmaster la vede e principalmente, la scrive!

Si parte dal Doctype. Una dichiarazione che viene prima del tag html. Si tratta di un elemento essenziale. Nessuna pagina web può essere scritta senza di esso.

Il Doctype

Doctype indica al browser, che tipo di versione HTML o XHTML il sito internet usa. Quale set di tag deve aspettarsi, nella compilazione della pagina web in fase di caricamento. In pratica: "detta le regole".

Esistono vari tipi di Doctype e sono in funzione della versione HTML o XHTML, usata dal webmaster per costruire il sito. Eccetto HTML versione 5, tutti gli altri Doctype, fanno riferimento a un DTD specifico.

Per ripassare l'argomento HTML e XHTML, torna alla lezione dedicata.

DTD è l'acronimo di Document Type Definition. Un vero e proprio documento realizzato con tutte le specifiche riguardo una certa versione HTML o XHTML. Tale documento detta le regole da seguire nella stesura di una pagina web. Indica quali tag si possono usare e quali no.

I diversi Doctype

Iniziamo da HTML versione 4.01 Strict. Dove strict indica al webmaster che non gli saranno consentite "sbavature" nell'uso dei tag. Ecco il Doctype che il browser si aspetta per HTML 4.01 Strict:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

Per rendere più "elastico" l'uso di alcuni attributi e per aggiungere gli elementi di presentazione, è stato introdotto il Doctype HTML 4.01 Transitional:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

HTML 4.01 Frameset è un Doctype identico al precedente, si differenzia solo per l'abilitazione dei frameset. Frameset era la pratica di dividere la pagina in frame. Non si usa più da tanto e in HTML 5 non è più supportato: appartiene solo alla storia.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">

Passiamo ai Doctype XHTML, i quali consentono di aggiungere gli attributi XML alle pagine HTML: una estensione delle potenzialità.

XHTML 1.0 Strict, riconosce tutti gli elementi HTML come nella versione HTML 4.01 Strict e, in aggiunta, richiede che le pagine siano formattate secondo le specifiche XML.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

XHTML 1.0 Transitional abilita all'uso degli attributi di presentazione e accetta anche gli elementi deprecati. Ovviamente deve seguire anche le specifiche per XML.

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

XHTML 1.0 Frameset ha il seguente Doctype:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

XHTML 1.1 è una evoluzione di XHTML 1.0 Strict, aggiunge alcune nuove funzionalità come la comprensione delle lingue Est asiatiche e si avvia verso la definizione di un linguaggio di formattazione più ricco di elementi.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
Se sei curioso di scoprire cosa contengono i DTD, copia gli URL dei Doctype nel browser e leggi il contenuto.

Per concludere, il Doctype di HTML 5:

<!DOCTYPE html>

Semplice vero?

Quale Doctype usare?

Ovviamente HTML 5. Dopo una prima fase di incertezza e di poca compatibilità dei nuovi tag con i browser, ora tale compatibilità è presente al 100%. Certo non con tutte le versioni di browser.

La retrocompatibilità con Internet Explorer precedente alla versione 9, ad esempio, è stata ottenuta grazie allo sviluppo di una applicazione Javascript, che viene inclusa nella parte head delle pagine web. Si tratta del codice qui sotto.

<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->

La versione di HTML5 Shiv sopra riportata è la 3.7.0. Attualmente siamo alla versione 3.7.3, raggiungibile su GitHub: https://github.com/afarkas/html5shiv.

Oltre IE dalla versione 6 alla 9, il progetto ha esteso l'uso degli elementi di HTML 5 anche a Safari 4.x e iPhone 3.x e Firefox 3.x.

Per concludere

Per molti anni c'è stata una disputa tra colossi dell'informatica e la fondazione W3C di Tim Berners-Lee. Dopo una scissione dei progetti, finalmente, il 28 ottobre 2014, il W3C ha emanato le nuove raccomandazioni riguardo HTML5 e XHTML5. I due progetti in qualche modo si fondono, per diventare un unico progetto comune.

 

Articoli Recenti

⟩⟩ Il ritorno di Zcash sulla cloud mining HashFlare    ⟩⟩ Biorepair dentifricio notte senza fluoro. Io l'ho comprato e...    ⟩⟩ Le nuove regole della scrittura di Ann Handley. Io l'ho letto    ⟩⟩ Premium cinema anteprima e serie TV di ottobre 2017    ⟩⟩ Il Grand Finale della sonda Cassini Saturno in diretta streaming