Bonjour,

je souhaite valider mon code, mais j'ai un soucis après avoir rajouté des infobulles Smiley lol
(cf Comment contrôler et modifier l'apparence d'une infobulle ? )

dans mon infobulle, je fais appel à h1 et h2 à l'interieur d'une balise <a...
pas étonnant qu'il ne soit pas valid Smiley biggrin

voici ma ligne de code :

<a class="info" href="index.php?c=BLOGDETAILS&IDBLOG=2">5 commentaires<span><h1>2nd test</h1> @ 28/04/2006<br /><h2>Dernier: </h2>Lionel<br />Et bah ! j'en ai fait du chemin ! et pa...</span></a>


et voici le message w3c
a écrit :

document type does not allow element "h1" here; missing one of "object", "applet", "map", "iframe", "button", "ins", "del" start-tag.

...&IDBLOG=1">aucun commentaire<span><h1>reprise</h1> @ 28/04/2006<br />aucun co

The mentioned element is not allowed to appear in the context in which you've placed it; the other mentioned elements are the only ones that are both allowed there and can contain the element mentioned. This might mean that you need a containing element, or possibly that you've forgotten to close a previous element.

One possible cause for this message is that you have attempted to put a block-level element (such as "<p>" or "<table>") inside an inline element (such as "<a>", "<span>", or "<font>").


[HS]
Je vois déjà certain se dire "ohoh ! il est rigolo lui !"
"index.php?c=BLOGDETAILS&IDBLOG=2" n'est pas valid non plus.
oui, oui, je sais ... j'ai fais du *RewriteRule* mais pour je ne l'utilise pas dans mes tests Smiley murf
[/HS]

bref,
comment passer ce problème de validité H1 dans ma balise de lien pour mon infobulle ?
Modifié par Aior (13 May 2006 - 01:34)
<h1> est du type bloc, alors que <a> est du type line, une balise line ne peut pas contenir une balise de type bloc.
Meme chose pour <h2>, et encore même chose pour la balise span qui contient les blocs <h1> et <h2>.

Tu ne valideras jamais ce type de code. (Je dirais même "et heuresement")

Deuxième chose, niveau sémantique est ce bien raisonnable d'utiliser un <h1> pour présenter le contenu en question?

J'ai du mal à saisir l'intérêt...
Shinuza a écrit :
<h1> est du type bloc, alors que <a> est du type line, une balise line ne peut pas contenir une balise de type bloc.
Meme chose pour <h2>, et encore même chose pour la balise span qui contient les blocs <h1> et <h2>.


la réponse est là!

j'ai utilisé une base du type line.
en l'occurence : strong.
et hop ! Valid XHTML 1.1 ! Smiley lol

j'suis totalement d'accord que c'est crado comme code.
du <strong> dans une balise <a> Smiley biggol
mais c'est le seul moyen à ma connaissance pour faire une mise en forme dans une inbollule.
et c'est passé valid XHTML, alors pourquoi pas ?!

hop ! résolu !

merci Shinuza