XHTML 1.1 è una riformulazione dell’ XHTML Strict, quindi ha una sola DTD. Non accetta i tag e gli attributi più criticati della precedente versione.
Ne consegue una più accurata stesura del codice seguendo gli standard dettati dal W3C, le regole della semantica, la conseguente esclusione delll’uso di tag deprecati e stili al di fuori dal codice.
Concentriamoci sulla semantica
Riepiloghiamo i punti necessari per un codice HTML semantico:
- l’uso dei tag per il loro scopo
- attribuire classi e id a favore dei fogli di stile
- separare contenitore e contenuto
- limitare al minimo gli elementi con puro scopo di presentazione
Semantica e tabelle per l’impaginazione
La progettazione di siti table-less non nasce da una moda. Con l’HTML 4.0, i div, i fogli di stile… è stata introdotta l’alternativa all’impaginazione dei siti web con le tabelle. Tra l’altro l’uso dei div è molto più adeguato e flessibile rispetto all’uso delle tabelle che, a prescindere dai CSS, non hanno nessun motivo semantico. Esse infatti si devono usare esclusivamente per intabellare dati tabellari, ovvero quei dati dove esiste una relazione tra riga e colonna (come nei fogli di calcolo).
Semantica e utenti meno abili
Un sito ben scritto e progettato, con codice semantico (ed accessibile, su cui scriverò qualcosa più avanti) aiuta la navigazione anche da parte di utenti meno abili, che si trovano ad usare browser ad hoc, reader per non vedenti, o browser solo testo…
Scrivendo ma il nostro codice metteremmo in crisi molti di questi visualizzatori di siti, non consentendo la navigazione a molte persone che avrebbero voluto fruirne.
Semantica e motori di ricerca
Un sito progettato con codice semantico, e quindi con Div e CSS, risulta molto più leggero in termini di codice XHTML rispetto a un analogo con le tabelle: questo risulta gradito ai motori di ricerca. Usare codice semantico e in particolare i titoli h1, h2, h3 con pertinenza al contenuto, oltre che paragrafi e liste aiuta gli spider dei motori nell’indicizzazione.
Semantica e CSS
Nel markup andranno evitati l’uso di immagini senza contenuto visuale effettivo, gli attributi presentazionali HTML ed elementi per servire la grafica: tutto ciò che è presentazione andrà delegato al CSS. I fogli di stile, che consentono di separare contenuto e struttura dalla presentazione, sono strettamente legati al codice semantico.
Bye…