5568 sujets

Sémantique web et HTML

Bonjour,

Je m'interroge sur l'intégration des balises <a> en HTML5

J'ai pour habitude et pour règle de les intégrer dans un <p> Cependant, je vois sur certains site et de plus en plus que les <a> peuvent être intégré sans être encadré d'un <p> ou autre.

Par exemple sur le site alsacreations.fr ou le lien "plus de référence" est intégré comme ça :


<section>
[...]
<a href="/references.html" class="bouton">
<img src="/img/bouton_references.png" alt="plus de références" class="quimby_search_image">
</a>
</section>


Quelles sont les règles aujourd'hui ?

Ce code est-il "valide" ?


<a href="#">
   <h4>Mon titre</h4>
   <span>Ma date</span>
   <p>Mon contenu</p>
</a>


Merci
Modifié par gandoulfee (14 Nov 2011 - 14:40)
Administrateur
gandoulfee a écrit :

J'ai pour habitude et pour règle de les intégrer dans un &lt;p&gt; Cependant, je vois sur certains site et de plus en plus que les &lt;a&gt; peuvent être intégré sans être encadré d'un &lt;p&gt; ou autre.

Hello,

Si mes souvenirs sont bons, les doctypes HTML4 strict et XHTML strict interdisent à un élément inline de se retrouver directement enfant de <body>.
C'est tout.

Donc il est parfaitement possible d'avoir des <a> n'importe où dans <body> à partir du moment où l'un des ancêtres est un élément de type bloc (<div>, <p>, <hn>, etc.).

Depuis HTML5 effectivement, il est même autorisé d'imbriquer des éléments blocs au sein d'un lien, ce qui n'était pas autorisé avant.
Modifié par Raphael (14 Nov 2011 - 14:31)
Raphael a écrit :

Hello,

Si mes souvenirs sont bons, les doctypes HTML4 strict et XHTML strict interdisent à un élément inline de se retrouver directement enfant de &lt;body&gt;.
C'est tout.

Donc il est parfaitement possible d'avoir des &lt;a&gt; n'importe où dans &lt;body&gt; à partir du moment où l'un des ancêtres est un élément de type bloc (&lt;div&gt;, &lt;p&gt;, &lt;hn&gt;, etc.).

Depuis HTML5 effectivement, il est même autorisé d'imbriquer des éléments blocs au sein d'un lien, ce qui n'était pas autorisé avant.


Merci ! Bonnes nouvelles tout ça !