Ogni browser ha una lista di elementi HTML supportati.Qualunque elemento non compaia in quella lista è da considerarsi un “elemento sconosciuto”.

Alla domanda su come applicare uno stile a questi elementi e su come renderizzare il DOM in questi casi, ogni browser ha dato una risposta differente.

E’ necessario sapere che tutti i browser renderizzano gli elementi sconosciuti come inline.
Poiché la maggior parte dei nuovi elementi HTML5 sono block ciò potrebbe comportare gravi cambiamenti alla visualizzazione del layout.

Come ben spiegato nel libro Dive into HTML5 (che consiglio di leggere per chi non l’ha ancora fatto) l’HTML5 non è un blocco monolitico, bensì è una collezione di singole proprietà che un poco alla volta tutti i browser stanno arrivando a supportare.

Non è quindi sufficiente, né sarebbe possibile, controllare se un browser può visualizzare una pagina in HTML5 oppure no, ciò che dobbiamo controllare è che la specifica feature che vogliamo utilizzare sia implementata dal browser che deve visualizzare la pagina.