Cible IE9 Uniquement via CSS
Demandais juste compte tenu de ces hacks IE dans mon sac à malices
"" - for IE8 and below.
"*" - for IE7 and below.
"_" - for IE6.
c'est à dire comme
body {
border:2px solid blue;
border:2px solid yellow ;
*border:2px solid green;
_border:2px solid orange;
}
Si quelqu'un a un hack pour IE9 ? c'est à dire que je suis en train de cible IE9 uniquement via CSS ?
- Cela va revenir et vous mordre quand vous vous y attendez le moins. Utilisez un commentaire conditionnel à la place:
<!--[if IE 9]><![endif]-->
. - grâce impressionnant. essayé de chercher et ne pouvait pas trouver quoi que ce soit 🙂 semble la source - blog.vervestudios.co/blog/post/2011/05/13/...
- C'est dommage que Microsoft n'a jamais mis les commentaires conditionnels dans le CSS. * Et _ sont effectivement de facto des normes pour IE6 et IE7; en lieu et place de Microsoft, la mise en œuvre des normes, nous aurons toujours besoin de ces rough & prêt hacks. Au moins IE10 est à la recherche prometteur et donc ne devrait pas avoir besoin de hacks.
- Les commentaires conditionnels en HTML sont inutiles dans les situations où vous ne pouvez pas modifier le code HTML.
Vous devez vous connecter pour publier un commentaire.
Je suggère d'utiliser condcoms pour nourrir une IE9 fichier css ou avez une condition html de classe, similaires à:
You cannot use condcoms in the CSS code itself
.ie9 body { }
par exemple..<head>
pour ce dont j'ai besoinTerrible, mais il devrait fonctionner:
\9;
partie est ignoré\9
semble aussi être le ciblage IE10, mais IE11 semble l'ignorerIE9 est assez conforme aux normes. Vous ne devriez pas avoir besoin de le pirater.
Aussi, vous devriez être en utilisant Les commentaires conditionnels d'IE pour charger des styles différents. Pour IE 9, vous feriez:
À cette adresse : http://www.impressivewebs.com/ie10-css-hacks/
J'ai trouvé une requête de média spécifique pour IE10 seulement (et ci-dessous) :
<meta http-equiv="X-UA-Compatible" content="IE=9">
Comme indiqué dans certains commentaires, il y a des moments où conditionnelle HTML ne fonctionne pas pour une situation spécifique, en particulier si vous n'êtes pas en mesure de modifier le code de la page elle-même. Alors, voici une solution de contournement:
Le Style De Base
Spécifiques À Un Navigateur Remplace
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;}
Notes
Le ci-dessus ne fonctionne pas pour
background
oufont-*
, et tout\0
ou\9
hacks sont généralement instable. Pour une liste complète des hacks CSS, voir http://mynthon.net/howto/-/webdev/CSS-big-list-of-css-hacks.txt.