Je me demande juste étant donné ces IE hacks dans mon sac de trucs
"\9" - for IE8 and below.
"*" - for IE7 and below.
"_" - for IE6.
c'est-à-dire comme
body {
border:2px solid blue;
border:2px solid yellow \9;
*border:2px solid green;
_border:2px solid orange;
}
Si quelqu'un a un tel hack pour IE9? c'est-à-dire que j'essaie de cibler IE9 uniquement via CSS?
Je suggère d'utiliser condcoms pour alimenter un fichier css IE9 ou avoir une classe html conditionnelle, similaire à:
<!--[if lt IE 7]> <html lang="en-us" class="no-js ie6"> <![endif]-->
<!--[if IE 7]> <html lang="en-us" class="no-js ie7"> <![endif]-->
<!--[if IE 8]> <html lang="en-us" class="no-js ie8"> <![endif]-->
<!--[if gt IE 8]><!--> <html lang="en-us" class="no-js"> <!--<![endif]-->
Terrible, mais ça devrait marcher:
body {
border:2px solid blue;
border:2px solid yellow \9;
*border:2px solid green;
_border:2px solid orange;
}
body:nth-child(n) {border:1px solid purple \9; /*Should target IE9 only - not fully tested.*/}
A cette adresse: http://www.impressivewebs.com/ie10-css-hacks/ J'ai trouvé une requête média spécifique à IE10 uniquement (et ci-dessous):
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
/* IE10-specific styles go here */
}
IE9 est assez conforme aux normes. Vous ne devriez pas avoir besoin de le pirater.
En outre, vous devez utiliser commentaires conditionnels IE pour charger différents styles. Pour IE 9 vous feriez:
<!--[if IE 9]>
<!-- conditional content goes here -->
<![endif]-->
Comme indiqué dans certains commentaires, il arrive que le HTML conditionnel ne fonctionne pas dans une situation spécifique, surtout si vous ne pouvez pas modifier le code de la page lui-même. Voici donc une solution:
.test{color:red;}
IE <8: html >/**/body .test { color: green; }
IE 9: :root .test{color:green \ ;}
IE 8 et 9: .test{color:green \ ;}
IE 9 et Opera :root .test {color: green\0;}
Ce qui précède ne fonctionnera pas pour background
ou font-*
, et n'importe quel \0
ou \9
les hacks sont généralement instables. Pour une liste complète des hacks CSS, voir http://mynthon.net/howto/-/webdev/CSS-big-list-of-css-hacks.txt .