2016-03-02 3 views
0

Ai-je trouvé le bug le plus ridicule du rendu html? Si vous placez un élément d'ancrage dans un autre élément d'ancrage, il va rendre l'enfant à l'extérieur il est parent: jsfiddleAncrer l'enfant dans l'ancre Élément parent bug

<a id="parent" href="#"> 
    <a class="child" href="#">Child</a> 
</a> 

Si vous changez l'élément à une période, il fonctionne très bien. Same example with span.

<span id="parent"> 
    <span class="child" href="#">Child</span> 
</span> 

Comme c'est le même en chrome, firefox, IE, Safari, sur linux, mac, windows, android Je tends à penser qu'il ya une règle cachée pour les éléments d'ancrage qui me manque.

+1

Les balises d'ancrage imbriquées sont illégales en HTML, contrairement aux balises imbriquées. –

+0

Ah ok, c'est logique. – Viktor

Répondre

0

Puisque les éléments d'ancrage imbriqués sont invalid HTML, la plupart des navigateurs essayer d'être utile et corriger que automatiquement pour vous, ce qui:

<a id="parent" href="#"></a><a class="child" href="#">Child</a> 

La raison la même chose ne se produit pas avec des éléments de portée est parce qu'ils peut être imbriqué et le navigateur n'interférera pas.