5568 sujets

Sémantique web et HTML

Bonjour,

Voilà mon problème : j'ai un paragraphe (<p>...</p>) et je souhaite passer celui-ci en lien. J'ai tout naturellement essayé :
<a href="..."><p>...</p></a>
Tous les navigateurs le comprennent, mais il ne passe pas la validation XHTML 1.0 Strict (erreur : "document type does not allow element "p" here"). Sachant que c'est ma seule erreur, en bon perfectionniste j'espère bien la corriger !

La première solution qui m'est venue à l'esprit est de placer le lien dans le paragraphe :
<p><a href="...">...</a></p>
Ça m'est cependant impossible. Pour comprendre il faut remettre en situation : il s'agit d'un thème Wordpress, est affiché le résumé de l'article et je veux que ce résumé renvoie vers l'article complet. Or Wordpress ne permet pas de modifier le HTML du résumé et applique automatiquement une balise <p> autour.

J'ai pensé à plusieurs autre solutions (de la modification du code de Wordpress à l'utilisation du javascript) mais toutes ont des défauts et je pense qu'il doit exister un moyen simple en HTML de résoudre l'erreur, non ?
Modifié par Simcoe (03 Aug 2009 - 15:26)
Simcoe a écrit :
je pense qu'il doit exister un moyen simple en HTML de résoudre l'erreur, non ?

En HTML 4 ou XHTML 1.0, corriger l'erreur consiste à mettre le lien dans le paragraphe, ou au moins à ne pas avoir d'élément de type bloc (P, DIV, etc.) dans ton lien. Impossible d'après ce que tu dis.

En HTML 5, cette construction (P dans un A) est à priori valide.

Dans un cas comme dans l'autre, si le contenu de ce paragraphe est un tout petit peu long (résumé d'article, extrait de 200 signes, etc.), en faire un lien est déconseillé. Les liens excessivement longs créent un problème d'accessibilité, car ils sont notamment difficiles (et pénibles...) à comprendre en restitution audio.
Merci pour ta réponse.

Du coup je pense me diriger vers un simple lien "Lire la suite". Je n'y avais même pas pensé avant ta remarque sur les liens longs...

Problème résolu ! Pas techniquement, mais résolu quand même !
Bonjour,

Si tu considère le problème [résolu] merci de l'indiquer dans le sujet de ton premier message.

Pour le lien, lire la suite, penses à bien renseigner l'attribut "title" pour donner un peu plus de précision sur le pointage du lien (le titre de l'article par exemple).

Bonne continuation.