Comment puis-je utiliser la mise en forme conditionnelle à l'intérieur d'une feuille de style CSS?
Je suis à la recherche d'une utilisation conditionnelle de style pour IE 9 - mais je veux avoir les conditions à l'intérieur de ma principale de la feuille de style - pas à l'aide d'une deuxième feuille de style ou de référence dans la page HTML. Pour le moment, je suis en train de mettre ce code dans la page HTML, qui travaille car il écrase les autres styles dans la principale de la feuille de style:
<!--[if IE 9]>
<style>
nav li a:hover {
text-decoration: underline;
color: black;
}
nav .four a:hover{
color:white;
}
</style>
<![endif]-->
Mais je voudrais avoir ces conditions dans la feuille CSS, de sorte que son tout situé dans un endroit et je n'ai pas à répéter le code de chaque page. Je préfère éviter d'avoir séparé CSS juste pour IE 9 - j'en ai déjà un pour IE 7-8. J'ai essayé ceci dans la feuille de style:
<!--[if IE 9]>
nav li a:hover {
text-decoration: underline;
color: black;
}
nav .four a:hover{
color:white;
}
<![endif]-->
Le code ci-dessus est spécifique pour mon nav bar
pour IE 9 (c'est un correctif pour le nav bar
parce que IE 9 ne prend pas en charge le texte-les ombres).
Est-il un moyen de le faire dans la feuille de style CSS?
Vous devez vous connecter pour publier un commentaire.
Commentaires conditionnels sont seulement pour HTML, mais vous peut en profiter dans votre CSS. HTML5Boilerplate se fait en ajoutant une classe à l'élément html (https://github.com/h5bp/html5-boilerplate/blob/master/index.html)
Cela vous donne un crochet que vous pouvez utiliser pour cibler seulement IE:
C'est normalement impossible. Blocs conditionnels dans IE peut être utilisé uniquement dans des pages web HTML.
Cependant, les éditeurs de navigateurs ont toujours été drôle avec leur css analyseurs, y compris Microsoft. Il ya donc un certain nombre de ce que nous appelons les hacks css qui peut être utilisé afin d'avoir quelques règles interprété par certains analyseurs mais pas par d'autres.
S'il vous plaît pas que c'est quelque chose qui doit être évitée si possible : la feuille de style ne sera pas conforme aux normes w3c, et de plus, il n'est certainement pas un "propre" de la solution (en plus comme la sale héritage des solutions de contournement qui étaient communes au cours de IE6 sombre du règne).
Voici tous les moyens de faire ce que votre demande. Le numéro 6 est prob ce que votre après. Il suffit de changer les 9 à 11. http://www.visibilityinherit.com/code/target-ie.php