Pb avec usemap en xhtml 1.1 strict

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics

Grantome
WRInaute accro
WRInaute accro
 
Messages: 2899
Inscription: Ven Jan 16, 2004 19:47

Pb avec usemap en xhtml 1.1 strict

Message le Mar Mai 18, 2004 9:58

Salut,
J'ai un léger soucis de validation xhtml 1.1 strict sur une image cliquable.

Voila, je vous met direct le code et les résultat du W3C

***************************Ma page************************
**********************************************************
Code: Tout sélectionner
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
blabla
</head>
<body>
blabla
<p><img src="france.gif" class="imglien" usemap="#france" title="Carte de France" alt="Carte de France et de ses régions" /></p>
<map id="france">
<area shape="poly" coords="blablabla"
href="./aquitaine.php" title="Aquitaine" alt="Les châteaux d'Aquitaine" />
</map>
</body>
</html>

****************************La validation***************************
********************************************************************
Code: Tout sélectionner
1 - Line 121, column 50: character "#" is not allowed in the value of attribute "usemap"

..."france.gif" class="imglien" usemap="#france" title="Carte de France" alt="Ca

2 - Line 121, column 50: reference to non-existent ID "#france"

..."france.gif" class="imglien" usemap="#france" title="Carte de France" alt="Ca

Voilà, si vous savez pourquoi ...


BadProcESs
WRInaute accro
WRInaute accro
 
Messages: 2656
Inscription: Lun Juil 28, 2003 15:58

Message le Mar Mai 18, 2004 14:11

T'a essayé usemap="france" tout simplement ?

madx
WRInaute impliqué
WRInaute impliqué
 
Messages: 303
Inscription: Jeu Juin 19, 2003 10:18

Message le Mar Mai 18, 2004 14:18

Salut,

Essaye,

<p><img src="france.gif" class="imglien" usemap="france" title="Carte de France" alt="Carte de France et de ses régions" /></p>

<map id="france">
<area shape="poly" coords="blablabla"
href="./aquitaine.php" title="Aquitaine" alt="Les châteaux d'Aquitaine" />
</map>

wap
WRInaute passionné
WRInaute passionné
 
Messages: 736
Inscription: Sam Mai 01, 2004 10:34

Message le Mar Mai 18, 2004 16:20

BadProcESs a écrit:T'a essayé usemap="france" tout simplement ?

Oui, ça devrait marcher. Les IDREF en XHTML 1.1 doivent commencer par une lettre, et peuvent être suivis par un nombre quelconque de lettres, chiffres, tirets, underscores, ...

Grantome
WRInaute accro
WRInaute accro
 
Messages: 2899
Inscription: Ven Jan 16, 2004 19:47

...

Message le Mar Mai 18, 2004 17:46

Ding.... Perdu... Quelqu'un d'autre ? :mrgreen:

Code: Tout sélectionner
usemap="france"


Vous pensez bien que j'ai tout essayé ces truc de virer, ou rajouter un caractère.

Et bien, le W3C ne vois plus l'erreur, mais..... L'image n'est plus cliquable.






Je savez que ferait sécher cette question. :roll:

Bon, si demain soir, pas de soluce, hop, un MP à Monique. :mrgreen:

wap
WRInaute passionné
WRInaute passionné
 
Messages: 736
Inscription: Sam Mai 01, 2004 10:34

Re: ...

Message le Mar Mai 18, 2004 18:05

Grantome a écrit:Je savez que ferait sécher cette question.

Euh... ta question portait sur la validation de ton code. Et visiblement ce point est réglé.

Tu pourrais nous donner une url pour qu'on regarde un peu plus en détail ?

Grantome
WRInaute accro
WRInaute accro
 
Messages: 2899
Inscription: Ven Jan 16, 2004 19:47

...

Message le Mar Mai 18, 2004 22:22

h**p://www.raikkonen-f1.com/test/chateaux-forts/chateaux-forts.php

Et la page vu par le w3c

h**p://validator.w3.org/check?uri=http%3A%2F%2Fwww.raikkonen-f1.com%2Ftest%2Fchateaux-forts%2Fchateaux-forts.php&charset=%28detect+automatically%29&doctype=%28detect+automatically%29&ss=1

:wink:


Remi L.
WRInaute accro
WRInaute accro
 
Messages: 1062
Inscription: Sam Sep 06, 2003 16:23

Message le Mar Mai 18, 2004 23:37

L'image n'est plus cliquable parce que tu as laissé le # dans la balise image :)

Grantome
WRInaute accro
WRInaute accro
 
Messages: 2899
Inscription: Ven Jan 16, 2004 19:47

...

Message le Mer Mai 19, 2004 7:18

Bon, je crois qu'on se mélange les pinceaux là.

Alors, tel que sur mon site, (voir le post au dessus pour le lien), l'image fonstionne parfaitement, mais le code ne passe pas le w3c à cause de la balise usemap qui contient un #

Si, je retire le # de la balise usemap, le W3c est ok, mais mon image n'est plus cliquable.


En gros, connaissez vous un site valide xhtml 1.1 strict qui utilise cette fonction de map cliquable pour que je puisse comprendre mon problème.

:mrgreen: C'est pas simple hein ?

wap
WRInaute passionné
WRInaute passionné
 
Messages: 736
Inscription: Sam Mai 01, 2004 10:34

Message le Mer Mai 19, 2004 8:20

En effet, c'est assez vicieux. Après recherches, il s'agirait en fait d'une erreur dans la recommendation du W3C.

En xhtml 1.1, lorsqu'on déclare un attribut devant prendre une valeur IDREF, cette valeur ne peut pas commencer par le caractère "#" (cf. les contraintes de validité).

Les spécifications xhtml font en général référence aux spécifications html 4.01 en ce qui concerne la sémantique. Or la sémantique définie par les spécifications html pour l'attribut usemap est de la forme : "uri [CT]".

Bilan : il n'est pas possible de faire "fonctionner usemap" dans un document xhtml 1.1 Strict...

Dans le cas de la page que tu as donnée en exemple, Grandtome, bien que le validateur du W3C ne repère que 2 erreurs, il y en a en fait 161 (on trouve pas mal de balises "<br>" par exemple).

Donc à mon avis :
- soit tu décides de rester en xhtml 1.1 et dans ce cas il faudra trouver une astuce pour l'image map (je pense que css peut être la clé) ;
- soit tu passes en xhtml 1.0 et dans ce cas il te suffit d'ajouter name="france" dans ta balise <map>. Ton image map fonctionnera, et ta page sera validée vu que l'attribut name ne pose pas de problème en xhtml 1.0

Dans les deux cas, il y a pas mal de ménage a faire dans le code pour qu'il soit valide (cf. les 161 erreurs, dont 2 seulement concernent l'histoire de l'image map).

Grantome
WRInaute accro
WRInaute accro
 
Messages: 2899
Inscription: Ven Jan 16, 2004 19:47

...

Message le Mer Mai 19, 2004 11:47

En xhtml 1.1, lorsqu'on déclare un attribut devant prendre une valeur IDREF, cette valeur ne peut pas commencer par le caractère "#" (cf. les contraintes de validité).

Les spécifications xhtml font en général référence aux spécifications html 4.01 en ce qui concerne la sémantique. Or la sémantique définie par les spécifications html pour l'attribut usemap est de la forme : "uri [CT]".

Bilan : il n'est pas possible de faire "fonctionner usemap" dans un document xhtml 1.1 Strict...


Ah bah oui, vu comme ça , le pb est résolu. Et m***.

Dans le cas de la page que tu as donnée en exemple, Grandtome, bien que le validateur du W3C ne repère que 2 erreurs, il y en a en fait 161 (on trouve pas mal de balises "<br>" par exemple).


???
De puis quand <br /> n'est pas autorisé en xhtml 1.1 strict ?

Certe, sémantiquement parlant, on peut le remplacer par un équivalent css, padding ou autre, mais en aucun cas il ne peut être consédéré comme erreur de validation au standart XHTML 1.1 Strict.

Ceci dit, je vais quand même tenter de les faire disparaitre un maximum.

wap
WRInaute passionné
WRInaute passionné
 
Messages: 736
Inscription: Sam Mai 01, 2004 10:34

Message le Mer Mai 19, 2004 12:15

Grantome a écrit:De puis quand <br /> n'est pas autorisé en xhtml 1.1 strict ?

Ca a toujours été autorisé, contrairement à "<br>" (dont je parlais).

Par contre, je me suis complètement planté en parlant des 161 erreurs :oops: J'avais sauvegardé ladite page en local pour pouvoir travailler dessus, et je viens juste de remarquer que lors de l'opération, tous les tags comme <br /> ou <meta /> deviennent <br> ou <meta> si on choisit l'option par défaut "Page web complète" au lieu de "HTML".

Sacré Windoz... ;-)

Grantome
WRInaute accro
WRInaute accro
 
Messages: 2899
Inscription: Ven Jan 16, 2004 19:47

...

Message le Mer Mai 19, 2004 15:14

Pfiouuuu... tu me rassures.

Je pensais déjà me tapper des valid sur différent site pour voir.

bashar
Nouveau WRInaute
 
Messages: 1
Inscription: Jeu Nov 18, 2004 20:56

Customiser la DTD

Message le Jeu Nov 18, 2004 21:09

Une technique de contournement, assez lourde :

http://www.juicystudio.com/tutorial/xhtml/module.asp#client

PS : je ne l'ai pas testée


La Chaise sauvage
WRInaute passionné
WRInaute passionné
 
Messages: 691
Inscription: Lun Avr 11, 2005 10:37

Message le Jeu Juin 30, 2005 14:24

oui je sais que ce sujet date, mais bon, si ça peut aider des gens...

la page avec la technique de contournement n'existe plus, mais on la trouve bien évidemment sur archive.org


en tout cas, j'ai testé cette solution (pas si lourde que ça..) :
-http://hotel.calvi-location.fr
et ma foi ça valide et ça fonctionne :P


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités