Le code HTML est analysé dans le modèle DOM (étape 3 dans le poste de Gary), où <br>
et <br />
sont considérés comme égaux. L'ajout d'un élément à une page HTML via JavaScript, que vous utilisiez jQuery ou tout autre moyen, analysera votre élément et l'ajoutera au DOM. L'apparence du HTML interne n'a plus d'importance pour le navigateur concerné.
Vous pouvez voir cela par vous-même si vous utilisez innerHTML
. Placez les éléments suivants dans un document HTML (peu importe si elle est XHTML, HTML4 ou HTML 3.2):
<p onclick="alert(this.innerHTML);">BR: <br />self close</p>
<p onclick="alert(this.innerHTML);">BR: <br>open</p>
<p onclick="alert(this.innerHTML);">BR: <BR>open capitals</p>
charge dans un navigateur et cliquez dessus.
Sur IE les trois variantes apparaissent comme "<BR>"
, sur FF, Chrome, Opera les trois variantes apparaissent comme "<br>"
. C'est ainsi que les navigateurs représentent le HTML en interne. Utiliser un code HTML valide ou un code HTML invalide avec JavaScript ne changera pas cela. Pire: la représentation HTML interne n'est pas XHTML valide, même lorsque le document est!
Oui, bien sûr. Je pense que vous manquez le point de validation. – Kobi
C'est de loin le pire moyen d'y remédier. Utilisez un doctype HTML au lieu d'un doctype XHTML si vous voulez utiliser
–