Ho provato a controllare altre risposte, ma sono ancora confuso - specialmente dopo aver visto W3schools HTML 5 reference.
Pensavo che l'HTML 4.01 dovesse "permettere" ai singoli tag di essere solo <img>
e <br>
. Poi è arrivato XHTML con <img />
e <br />
(dove qualcuno ha detto che lo spazio è lì per i vecchi browser).
Ora mi sto chiedendo come dovrei formattare il mio codice quando pratico HTML 5.
È <br>
, <br/>
o <br />
?
Semplicemente <br>
è sufficiente.
Le altre forme sono lì per compatibilità con XHTML; per rendere possibile scrivere lo stesso codice di XHTML, e farlo funzionare anche come HTML. Alcuni sistemi che generano HTML possono essere basati su generatori XML, e quindi non hanno la capacità di emettere solo un semplice tag <br>
; se stai usando un tale sistema, va bene usare <br/>
, semplicemente non è necessario se non ne hai bisogno.
Pochissime persone usano effettivamente XHTML, comunque. Hai bisogno di servire il tuo contenuto come application/xhtml+xml
perché sia interpretato come XHTML, e questo non funzionerà nelle vecchie versioni di IE - significa anche che ogni piccolo errore che farai impedirà alla tua pagina di essere visualizzata nei browser che supportano XHTML. Quindi, la maggior parte di ciò che sembra XHTML sul web è in realtà servito, e interpretato, come HTML. Vedi Serving XHTML as text/html Considered Harmful per maggiori informazioni.
XML non permette di lasciare i tag aperti, quindi rende <br>
un po' peggio degli altri due. Gli altri due sono approssimativamente equivalenti con il secondo (<br/>
) preferito per la compatibilità con i vecchi browser. In realtà, lo spazio prima di /
è preferito per la compatibilità, ma penso che abbia senso solo per i tag che hanno attributi. Quindi direi o <br/>
o <br />
, qualsiasi cosa piaccia alla tua estetica.
Per riassumere: tutti e tre sono validi con il primo (<br>
) che è un po' meno "portatile".
Modifica: Ora che siamo tutti pazzi per le specifiche, penso che valga la pena sottolineare che secondo dev.w3.org:
I tag di inizio consistono nelle seguenti parti, esattamente nel seguente ordine:
- Un carattere "<".
- Il nome del tag dell'elemento.
- Facoltativamente, uno o più attributi, ognuno dei quali deve essere preceduto da uno o più spazi caratteri.
- Facoltativamente, uno o più caratteri di spazio.
- Opzionalmente, un carattere "/", che può essere presente solo se l' è un elemento nullo.
- Un carattere ">".