La questione del supporto di XHTML da parte dei browser è delle più interessanti. Nel corso delle precedenti lezioni abbiamo più volte accennato all'argomento. Qui raccoglieremo le idee e fisseremo i punti chiave del problema.
XHTML 1.0 è un linguaggio che garantisce la compatibilità con il passato. Basta salvare il documento con estensione .html e il gioco è fatto. Tutti i browser saranno in grado di rendere il documento, soprattutto se si rispettano alcune semplici regole. Ne ricordiamo due che risolvono problemi con Netscape 4 e con Explorer 4 e 4.5 per Mac:
Uno dei concetti su cui tante volte si è insistito è quello di documento valido e ben formato. Nell'ultima lezione abbiamo imparato tutto sulla validazione. Tenetelo in mente e fatela sempre. Perchè fin quando ci saranno questi browser è l'unico modo che avete per assicurarvi che i vostri documenti rispettino gli standard. I browser attuali non hanno infatti un meccanismo di controllo della correttezza formale di un documento. Chiariamo subito.
Nel listato 2 abbiamo riportato lo stesso codice della prima pagina XHTML, ma con una piccola modifica: abbiamo eliminato il tag di chiusura del paragrafo. Copiate il codice, incollate e salvate come "test2.html". Aprite nel vostro browser. Nessuna differenza rispetto al primo esempio. Ora procediamo alla validazione. Il validatore vi avvertirà che avete omesso il tag di chiusura: il documento non è valido.
Cosa impariamo da questo? Che i browser di oggi hanno le maglie molto larghe, lasciano passare tutto, per loro le DTD non esistono. Visto che per anni ha regnato l'anarchia del codice i loro parser HTML sono abituati a tutto. Come stupirci? Pensate se fossero stati rigidi censori del nostro codice! Non riusciremmo a vedere che una percentuale irrisoria di pagine (solo quelle scritte in modo corretto).
Ma facciamo un passo avanti e cerchiamo di capire come potrebbe essere il futuro. Non abbiamo bisogno di costruire ipotesi. Possiamo provarlo sin da ora.
XHTML è XML, ricordate? Bene. I browser recenti (quelli di quinta e sesta generazione) sono tutti in grado di gestire, più o meno bene, il formato XML. Ognuno di essi ha un parser XML, un processore che analizza il documento. I parser XML sono di due tipi:
Quelli implementati nei principali browser sono parser del tipo non validante.
Ora prendete i due documenti (la prima pagina e la sua versione modificata). Rinominateli, assegnando questa volta l'estensione XML (trovate una copia dei file "test.xml" e "test2.xml" nel file zip con i materiali del tutorial).
I browser hanno comportamenti diversi nel modo di visualizzare l'output del primo documento (quello corretto), ma tutti fanno la stessa cosa con quello che non è ben formato: interrompono la visualizzazione e segnalano l'errore. Non è una bizzarria. È quanto viene esplicitamente richiesto nella specifica XML: quando incontra un errore un processore deve interrompere l'elaborazione del documento.
Abbiamo riportato per comodità l'output dei due file prodotto dai seguenti browser (le immagini sono accompagnate da note di commento):
Concludendo: i browser attuali tollerano, ma in futuro? Quando e se ci saranno browser XHTML una pagina con errori non verrà caricata. Torna il discorso di fondo: ciò che oggi è facoltativo domani sarà necessario, perchè non prepararci per tempo al futuro?
Inserire video nelle pagine Web con HTML5Codec, compatibilità dei browser, tools, codice e best practices per... |
LungoJS: semantica HTML5 per il mobileRealizzare layout per dispositivi mobili tenendo conto della... |
Web storage, i cookies secondo HTML5Come rendere persistenti i dati con HTML5 |
HTML5, section o article? ...E il div?Cerchiamo di fare chiarezza sull'uso di questi due nuovi elementi e... |
HTML5, la validazione del codiceGli strumenti per verificare l'aderenza agli standard di pagine e... |
Guida HTML5Una guida per conoscere e applicare da subito le novità introdotte... |
Guida XHTMLXHTML è il nuovo standard per il WEB ed è la transizione verso... |
Ogni mattina, dal lunedì al venerdì, le novità pubblicate su tutti i siti tecnici del network HTML.it: articoli, guide, notizie dal Web, blog e molto altro.
Iscriviti alla newsletter
|
|
Corso Webmaster base18 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base25 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base05 Giugno 2012 a Roma |
|
|
Corso Webmaster base11 Giugno 2012 a Roma |