Qualche tempo fa
scrivevo in queste stesse pagine (seppur fatte di pixel...) che
dopo tutto valeva la pena di passare ad XHTML, quanto meno per il
vantaggio introdotto dalla validazione. Sintatticamente l'XML (il formato usato dall'XHTML) e' meno bisbetico del'HTML che ha molti corner case ed e' molto piu' complesso.
Per il resto e' chiaro a tutti che dal punto di vista della accessibilita' non cambia assolutamente nulla.
Prima un po' di fatti
- l'HTML e' una versione piu' semplice dell'SGML, ma ancora molto complessa.
- l'XML e' stato ricavato anch'esso dall'SGML ma al contrario dell'HTML e' stata posta l'enfasi sulla semplicita' sintattica, di parsing, e sulla rigidita' delle regole. Un client XML non si sforza di leggere oltre se trova qualcosa di non valido in un documento, si blocca con un errore.
- Il doctype da solo non e' in grado di far interpretare l'XHTML come XML, il browser si fidera' di quello che dice il Content-Type dell'header HTTP.
E ora la doccia fredda
Si... avete capito bene, mentre leggete questa pagina valid xhtml strict i vostri browser stanno invece pensando che e' HTML formattato un po' male con dei strani tag che si chiudono <cosi' />...
- Se proprio volete forzare l'interpretazione corretta potete emettere un header tramite l'applicazione web o modificando la configurazione di Apache, ad esempio in PHP la cosa suona piu' o meno come header("Content-Type: application/xhtml+xml") ma dopo non funziona piu' niente con alcuni browser, e anche i migliori potrebbero avere difficolta' in molti contesti.
- l'HTML4 e l'XHTML sono semanticamente identici, hanno esattamente gli stessi tag, e la stessa capacita' di separazione tra contenuto e presentazione, anche il posizionamento e tutto il resto funziona allo stesso modo. In pratica ad oggi l'XHTML non offre alcun vantaggio reale.
Tanto e' vero che le nostre pagine vengono interpretate come HTML per la questione dell'header HTTP... dunque di fatto stiamo quasi tutti utilizzando l'HTML come accadeva un tempo
Come comportarsi nella pratica?
La mia idea e' la seguente: siccome di fatto
evitando di emettere il giusto header tutto funziona alla perfezione perche' l'XHTML e' piu' o meno un subset valido dell'HTML se non fosse per la chiusura dei tag e il doctype, ma ha il grosso vantaggio di abituarci ad una sintassi piu' rigida e si presta ad essere corretto tramite strumenti automatici
continuare ad usarlo puo' essere dopo tutto una buona idea, ma almeno ora coscienti del fatto che sappiamo come funzionano le cose (per chi non lo sapeva gia'... io no).
Per alcuni la soluzione e'
HTML5 se mai vedra' la luce, ce lo dira' il tempo, ma per ora forse e' meglio
evitare di essere religiosi su queste questioni e cercare di pensare
ai contenuti.
Per approfondire