28220 sujets

CSS et mise en forme, CSS3

Bonjour
En prenant le source d'une CSS sur le site http://www.oswd.org/, j'ai vu ce bout de code :

#text {
  float: right;
  width: 410px !important;
  width: 437px;
  padding: 10px 5px 20px 20px !important;
  padding: 20px 5px 20px 20px;
}


j'aimerai savoir pourquoi les 2 propriétés sont doublées ???
merci
Salut,
Tous simplement parceque comme tu as pu le remarquer il il y un !important
Or ce dernier n'est pas pris en compte dans ce cas la (doublage des propriété) par IE.
Donc etant donné que normalement c'est la derniere propriété qui est prises en compte, IE prend en compte la derniere et les autres browser celle qui a la mention !important
Ceux-ci sont des hack CSS à éviter si possible.
Le !important dans d'autres situation permet de donner a la propriété correspondante la plus haute spécificité (priorité)


Voir http://openweb.eu.org/articles/cascade_css/
Modifié par Hermann (11 Jan 2006 - 20:02)
ok c'est une propriété que je ne connaissais pas car rarement référencée.
Si je comprends bien, on s'en sert plutot pour s'adapter à IE (ou adapter IE à notre CSS Smiley lol ) meme si, en soi, elle n'a pas cette fonction première ?
Oui ou plutôt pour pouvoir exploiter les différence entre IE et les autres browser.
Mais attention à ne pas abuser du !important? pour des questions de comppatibilité ascendantes. IE7 l'aura peut-être implémenté.
Tu epx te tourner sinon vers la solution des commentaires conditionnels qui permette de faire une CSS que pour IE.

voir http://forum.alsacreations.com/faq/#item53
Modifié par Hermann (11 Jan 2006 - 20:45)