Il est bien connu qu'IE6 ne supporte pas la sélection descendante directe avec >
, mais ce que j'ai trouvé récemment, c'est que si vous avez plusieurs règles de sélection séparées par des virgules, elles les ignorent toutes si >
.Existe-t-il un moyen de faire échouer gracieusement IE6 en rencontrant '>'?
Voici le morceau de code que j'utilisé pour tester la question:
<body>
<style>
.one, .two{
width: 100px;
height: 100px;
background-color: #FFCCAA;
}
body .two, body > .one{
background-color: #CCFFAA;
}
</style>
<div class="one"></div>
<div class="two"></div>
</body>
Je suppose (n'a pas lu les docs) que ce comportement est normal parce que quand vous écrivez AAA, BBB
vous ne définissez pas réellement deux sélecteurs, mais un avec deux parties.
Encore faut-il demander ... Y at-il une solution qui n'implique pas d'écrire deux fois mes règles CSS?
Merci,
Alin
post-scriptum L'utilisation de JavaScript n'est pas acceptable.
Vous ne définissez deux sélecteurs séparés, mais en utilisant une virgule pour les regrouper, il est considéré comme une règle. La spécification indique que sur un sélecteur non reconnu, la * règle * entière est ignorée. Donc en effet, IE6 échoue aussi gracieusement que prévu. La seule vraie solution est, comme le dit PorneL, de séparer les sélecteurs dans leurs propres règles:/ – BoltClock