!important;

!important; - HTML/CSS - Programmation

Marsh Posté le 24-06-2005 à 16:01:56    

Bonjour tout le monde,
 
il y a un "moyen" (dans une CSS) de ne faire comprendre certaines choses qu'aux navigateurs évolués et que cela passe à la trappe pour le(s) navigateur(s) dégénéré(s) : !important;
 
Ceci étant bien utile, j'ai tendance à l'utiliser : cela est-il "permis" ou faut-il l'éviter (au maximum) ?
 
Merci.

Reply

Marsh Posté le 24-06-2005 à 16:01:56   

Reply

Marsh Posté le 24-06-2005 à 16:07:09    

Ce que tu évoques, c'est le fameux :

pouet {
  color: red !important;
  color: green;
}


Donc sous IE, le texte sera vert, et sous le reste il sera rouge. Par contre, si on fait ça :

pouet {
  color: red !important;
}
pouet {
  color: green;
}


Là, ce sera rouge partout.
 
 
Alors je souhaite toutefois prendre la défense d'IE dans ce cas. Quel est l'interêt du premier truc ? Quel intérêt à mettre un deuxième color alors que le premier est déclaré !important ? Réponse : aucune, c'est une ligne complètement inutile. Du coup IE se dit : ok, y'a un color !important. Mais tout de suite après, dans la même déclaration, un deuxième. Et dans ce cas là, IE va changer la color en green et non-!important.
 
Donc c'est un truc que j'aime pas exploiter, parce qu'il repose sur une interprétation des normes presque légitime. A vérifier dans la recommandation... J'y cours

Reply

Marsh Posté le 24-06-2005 à 16:13:42    

Pas tout à fait inutile qd-même parce qu'évidemment ce n'est pas pour que sous un navigateur ce soit rouge et sous un autre vert ! C'est pour des choses un peu plus "fines" que cela.
 
Exemple :
 

Code :
  1. div#icones
  2. {
  3. margin-left: auto;
  4. margin-right: auto;
  5. width: 410px !important;
  6. width: 411px;
  7. height: 35px;
  8. margin-top: -42px;
  9. }


 
Comme chacun sait, ie gère les bordures de façon "olé-olé" alors...

Reply

Marsh Posté le 24-06-2005 à 16:15:20    

Ouais, voilà, c'est exploiter une spécificité d'IE à des fins de hack ;) Et comme tout hack, faut y faire avec des pincettes...

Reply

Marsh Posté le 24-06-2005 à 16:15:57    

Je préfère l'underscore hack.
 

Code :
  1. .pouet
  2. {
  3. color:red; /*navigateurs respectants les standards */
  4. _color:green; /* seul ie interprètera cette ligne, et prendra donc le vert, puisque pour lui elle est après le rouge.*/
  5. }


Message édité par plainsofpain le 24-06-2005 à 16:16:14

---------------
http://www.alsacreations.com , http://www.openweb.eu.org. Mon CV : http://cv.roane-irkana.net/. Exemple à ne surtout pas suivre : www.worldinternet.be
Reply

Marsh Posté le 24-06-2005 à 16:22:04    

je l'utilise comme hack pour le min-height
 

#principal  
 {
 margin-left: 18em;
 padding-right: 2em;
 padding-top: 1em;
 padding-bottom: 1em;
 height: auto !important;
        height: 500px; /* because ie suxxe */
        min-height: 450px;    
 }
 html>body #principal
 {
 height: auto;
 }


---------------
planuldep | Association pêche à la Sempé
Reply

Marsh Posté le 24-06-2005 à 16:53:38    

Ok, donc si j'ai bien compris, on peut si pas l'choix mais ne pas en abuser.
 
Sinks.

Reply

Marsh Posté le 24-06-2005 à 16:59:23    

Tant qu'IE ne suivra pas les standards ...
 
Un jour, ca changera enfin peut-etre ...


---------------
http://www.alsacreations.com , http://www.openweb.eu.org. Mon CV : http://cv.roane-irkana.net/. Exemple à ne surtout pas suivre : www.worldinternet.be
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed