Denis Posté 25 Octobre 2004 Posté 25 Octobre 2004 Bonjour à tous, Dans un projet de refonte pour un client (MontrealCam.org, pour ne pas le nommer), nous devons passer un commentaire conditionnel pour afficher un message aux utilisateurs de MSIE 5 et 5.5 afin de les traiter comme nous traitons NS4 (c'est-à-dire avec un message d'invitation à une mise à jour des navigateurs) : http://montrealcam.org/fr-miseengarde.html Je me disais que ce serait une affaire de rien de passer un commentaire conditionnel pour faire afficher ce message au besoin, mais curieusement, MSIE 5.5 (car je ne vise que celui-là dans le test actuel) n'affiche pas le contenu comme il le devrait. J'utilise pourtant une syntaxe qui m'apparaît correcte, à savoir : <!--[if IE 5.5]><div style="border: 1px solid #000; padding: 10px;"> The MontrealCam's website looks funny in your browser? <a href="en-miseengarde.html">Click here to understand why</a>.</div><![endif]--> Mais que dalle dans le navigateur de Redmond... Z'avez une idée pourquoi ? Pour info et voir une page type en action, j'ai intégré le bout de code dans cette unique page pour le moment : http://montrealcam.org/en-biodome.html
Monique Posté 26 Octobre 2004 Posté 26 Octobre 2004 Bonjour Denis, Si je comprends bien les explications de Microsoft : Comment Type Syntax or Possible Valuestandard HTML comment <!-- Comment content --> downlevel-hidden <!--[if expression]> HTML <![endif]--> downlevel-revealed <![if expression]> HTML <![endif]> la bonne syntaxe ne serait-elle pas <![if !IE 5]><p>Please upgrade to Internet Explorer version 5.</p><![endif]> Un autre exemple <![if lt IE 5]><i>Hay man, get with the program, and get IE 5+! You're missing some great stuff because of your current brain dead browser!</i><![endif]>
Denis Posté 26 Octobre 2004 Auteur Posté 26 Octobre 2004 Oh je vois ou j'ai fais mon erreur... merci. Apparemment, mes commentaires conditionnels sont mal commentés... c'était si évident que je ne le voyais pas.. je vais tester tout ça et revenir faire un petit retour d'expérience.
LaurentDenis Posté 26 Octobre 2004 Posté 26 Octobre 2004 (modifié) Ce n'est pas tout à fait ça. Pour n'afficher le contenu que dans IE5.0 et EI5.5, il faut utiliser la syntaxe disant "IE et version strictement inférieure à 6", c'est à dire: <!--[if lt IE 6]>...<![endif]--> Attention Denis: si tu as plusieurs IE installés simultéement, ils se comportent vis à vis des commentaires conditionnels comme s'ils étaient tous IE6... Monique: la syntaxe que tu cite est celle du "downlevel-revealed" qui sert au contraire à cacher le contenu du commentaire à IE... et qui est surtout invalide en HTML Bon, tant que j'y suis, les commentaires conditionnels à utiliser sont typiquement selon la cible: <!--[if gte IE 5]> pour afficher le contenu dans IE 5.0 55.5 et 6.0 <!--[if IE 5]> pour IE 5.0 <!--[if IE 5.5000]> pour IE 5.5 <!--[if IE 6]> pour IE 6.0 <!--[if gte IE 5.5000]> pour IE 5.5 et 6.0 <!--[if lt IE 6]> pour IE 5.0 et 5.5 Modifié 26 Octobre 2004 par LaurentDenis
Monique Posté 26 Octobre 2004 Posté 26 Octobre 2004 Ok Laurent, c'est vrai que j'ai beaucoup hésité sur la manière de comprendre downlevel-revealed <![if expression]> HTML <![endif]> J'avoue que j'étais un peu perdue là et j'avais passé l'exemple au validateur WDG... il n'a rien dit.
Denis Posté 26 Octobre 2004 Auteur Posté 26 Octobre 2004 Merci à vous deux pour les explications et l'effort ! Je teste tout ça aujourd'hui.
LaurentDenis Posté 26 Octobre 2004 Posté 26 Octobre 2004 (modifié) j'avais passé l'exemple au validateur WDG... il n'a rien dit. <{POST_SNAPBACK}> Line 15, column 3: "IF" is not a reserved name <![if !IE 5]> ... Line 15, column 6: character data is not allowed here <![if !IE 5]> ... Line 17, column 3: "ENDIF" is not a reserved name <![endif]> ... Line 17, column 8: character data is not allowed here <![endif]> Il y a des fois où je me dis que j'ai raison de préférer le validateur du W3C Modifié 26 Octobre 2004 par LaurentDenis
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant