Page 1 sur 1

Commentaires Conditionnels

Posté : 28 juil. 2005, 22:50
par Sined
Bonjour,
Dans mon site j'utilise cela :

Code : Tout sélectionner

<![if !IE]><style type="text/css">@import url("themes/Normal/chat.css");</style><![endif]>
Cela marche correctement (il est pris en compte sur les navigateurs différents de IE).
Le problème c'est que c'est pas valide HTML (ca coince au validateur W3C)!
Quelqu'un peut m'aider?

Posté : 28 juil. 2005, 22:55
par Cyrano
:shock: Qu'est-ce que c'est que ces balises bâtardes ???? Ça sent le code Microsoft propriétaire à plein nez, et crois moi je m'y connais (en nez :langue: )

Tu veux faire quoi au juste ?

Posté : 28 juil. 2005, 23:04
par Sined
:shock: Qu'est-ce que c'est que ces balises bâtardes ???? Ça sent le code Microsoft propriétaire à plein nez, et crois moi je m'y connais (en nez :langue: )

Tu veux faire quoi au juste ?
Non se ne sont pas des balise proprétaires car quand il n'est pas question d'une ingégalité, elle passe au validateur (par exemple

Code : Tout sélectionner

<!--[if IE 5]>You are using IE 5!<![endif]-->
C'est balises permettes d'executer un code que si le navigateur correspond au code (! pour différent...). Je sais je pourais utiliser javascript ou php mais je trouve sa plus court !

Plus d'info (en anglais) : http://www.javascriptkit.com/howto/cc2.shtml

Posté : 28 juil. 2005, 23:11
par Cyrano
Plus court, possible, mais absolument pas standard dans les DTD HTML et encore moins XHTML.

Posté : 29 juil. 2005, 09:18
par zeus
En fait c'est une grosse astuce :

IE interprete le code HTML qui se trouve entre commentaire
Donc si tu fait

Code : Tout sélectionner

<!-- <p>Tu utilise IE</p> -->
IE va afficher le message alors que les autres ne vont pas le faire

Donc tu sais quand quelqu'un utilise IE

plus d'info ==> ICI <==

Perso, je suis contre cette manière de faire, je suis contre l'intolérance envers les "autres" navigateurs (ceux qu'on utilise pas). Je rale souvent sur les différences d'interprétation mais j'en fait mon partie et je tente de faire pour tous, mais je désaprouve totalement le fait de tenter de dire que il n'y a que le bon-navigateur-que-j'aime-bien qui est bien

Posté : 30 juil. 2005, 00:02
par Sined
Plus court, possible, mais absolument pas standard dans les DTD HTML et encore moins XHTML.
Ta trop fumé regarde un peu => http://validator.w3.org/check?uri=http% ... Ftest.html

Posté : 30 juil. 2005, 08:08
par pjl
Et de ton coté, tu pourrais rester correct, si ce n'est trop te demander, et essayer d'écrire correctement.
IE interprete le code HTML qui se trouve entre commentaire
Ce que tu as mis est un commentaire en HTML et c'est normal que le validateur du W3C ne cherche pas à valider un commentaire.

Posté : 30 juil. 2005, 10:55
par Cyrano
Plus court, possible, mais absolument pas standard dans les DTD HTML et encore moins XHTML.
Ta trop fumé regarde un peu => http://validator.w3.org/check?uri=http% ... Ftest.html
Je te signale que j'ai basé mon commentaire sur la base de ton premier bout de code :

Code : Tout sélectionner

<![if !IE]>...
Or dans ton code validé, il y a:

Code : Tout sélectionner

<!--[if !IE]>
La différence est fondamentale : il s'agit alors d'une balise de commentaire HTML effectivement parfaitement valide, la première version étant erronée.

Posté : 30 juil. 2005, 23:31
par Sined
Plus court, possible, mais absolument pas standard dans les DTD HTML et encore moins XHTML.
Ta trop fumé regarde un peu => http://validator.w3.org/check?uri=http% ... Ftest.html
Je te signale que j'ai basé mon commentaire sur la base de ton premier bout de code :

Code : Tout sélectionner

<![if !IE]>...
Or dans ton code validé, il y a:

Code : Tout sélectionner

<!--[if !IE]>
La différence est fondamentale : il s'agit alors d'une balise de commentaire HTML effectivement parfaitement valide, la première version étant erronée.
Oui j'en suis contient mais si je met "<!--[if !IE]>" sa ne marche pas, alors que si je met "<![if !IE]>" sa marche avec firefox donc... enfin merci d'avoir essayé d'avoir de m'avoir aidé mais j'ai trouvé une autre solution!

commentaires conditionnels

Posté : 06 mai 2007, 17:03
par Pierre AP
Bonjour à tous,Dans le cas d'une position 'fixed' non lu par ie, je voudrais savoir ce qu'il y faut modifier dans ce code :
feuille CSS :

Code : Tout sélectionner

@charset "iso-8859-1"; <!--[if lt IE 7]> <link href="ie-less-than-ie7.css" rel="stylesheet" type="text/css" /> <![endif]--> body { background-color:#e6e6d9; position: absolute; background: url('../fond2.jpg') no-repeat; background-position: 50% 0; font-family:"Georgia", Times, "Times New Roman", Palatino, serif;font-size:.9em; height: 100%; width: 100%; text-align:center; top: 0; left: 0; }
feuille CSS pour les autres navigateurs :
modern-browsers.css :

Code : Tout sélectionner

body{ top: 0; background-color:#e6e6d9; background-image: url('../fond2.jpg'); background-attachment : fixed; background-position: 50% 0; background-repeat: no-repeat; font-family:"Georgia", Times, "Times New Roman", Palatino, serif;font-size:.9em; height: 100%; width: 100%; text-align:center; overflow:auto; }
La page : http://ppzx.net/gestaltdos/gestalt.php5

Merci d'avance. Pierre AP

PS avec ie 7 et windows xp tout va bien.