2010-03-16 7 views
1

Je voudrais utiliser des sélecteurs CSS2 (parent > child, element:first-child, etc) dans ma feuille de style, mais IE6 ne semble pas les reconnaître. Existe-t-il un plugin (jQuery de préférence) qui me permettrait d'utiliser librement des pseudo-sélecteurs sans se soucier de l'IE6?Sélecteurs CSS2 et IE

+1

Vous ne pourriez pas vous inquiéter de l'IE6 damné en général. ;) –

+0

Je souhaite que je pourrais, mais le client a besoin du support IE6. – 3zzy

Répondre

3

mise à jour:

Le Super Selectors plugin jQuery scanne les styles de la page pour les sélecteurs qui ne sont pas pris en charge par tous les navigateurs et ajoute des classes apropriate aux éléments que les sélecteurs CSS3 ciblent.

Vous pouvez également consulter ces sélecteurs CSS3 pour IE5/IE8 appelé ie-css3.js

+0

J'utilise déjà jQuery (qui vient avec sizzle), mais je veux quelque chose qui me permettrait d'utiliser librement pseudo-sélecotors sur ma feuille de style css. – 3zzy

+0

voir mes mises à jour! ;-) –

2

Je vous recommande de ne pas utiliser javascript pour résoudre ce genre de problèmes.

La meilleure approche que j'ai trouvé utilise conditionalcomments et créer un fichier CSS IE only, optimisé pour que infernales navigateur. À long terme, la petite duplication du travail est compensée par la plus petite quantité d'incompatibilités que vous auriez à corriger entre les navigateurs sensés et IE.

2

En règle générale, je vais avec adding classNames to the body tag via conditional comments comme ma méthode préférée pour faire face aux difficultés de plusieurs navigateurs.

Toutefois, si cela est hors et si les performances ne sont pas une préoccupation, vous pouvez toujours essayer excellent IE7.js de Dean Edwards. Il analysera et gravera votre feuille de style, sélectionnera et implémentera ces sélecteurs non supportés.

Attention, à mesure que vos feuilles de style augmentent et que votre taille et complexité augmentent, les performances du script (et de votre site) en souffriront dans IE6. Cependant, dans beaucoup de cas, les choses devraient fonctionner correctement. Assurez-vous de le commenter sous condition pour IE6 et ci-dessous et vous serez défini.