2011-05-25 6 views
1

Im une utilisation des onglets de l'interface utilisateur de jquery.
Ces onglets ajoutent dynamiquement des classes aux balises <ul> et <ul><li> pour la visualisation.Problème de priorité CSS et jquery

Cependant, je travaille dans un environnement où je remplis seulement une partie du site, qui est à l'intérieur d'un

<div id="content">

bloc et d'autres styles CSS sont appliqués. Comme #content ul li est plus spécifique que le ul li de jquery, le premier a la priorité.

Comment puis-je résoudre ce problème?

MISE À JOUR: Je suis conscient de! Important, ce n'est cependant pas une réponse à cette question, j'espère trouver une solution où je n'ai pas besoin d'altérer le CSS de jquery-ui. (whatif vous utiliseriez une version mise en cache en ligne? Et si vous devez cascader tout ce que vous pourriez aussi bien redéfinir sans! important)

MISE À JOUR 2: ce n'est certainement pas une question javascript, s'il vous plaît ne pas le marquer comme ça .

Répondre

5

Vous pouvez utiliser mot-clé importante, ce qui rend le sélecteur plus important, sur les valeurs en cascade:

#content ul li { 
    color:red; 
} 
ul li { 
    color:black !important; 
} 

Est-ce que vous cherchez?

+0

+1 pour une utilisation dans ce contexte, mais je ne crains pas pour cette situation particulière. Si je l'utilise, je dois intervenir dans le CSS de jquery-ui ou redéfinir toutes leurs règles css ... – Peter

+0

d'ailleurs, dans ce cas, je pourrais facilement avoir écrit #content ul li { couleur: noir; } aussi. – Peter

+0

Hmmm, tu cherchais un mot pas si important à utiliser? :) Mais comme cela n'existe pas, je ne peux penser à aucune autre solution mais réécrire les déclarations de l'interface utilisateur jQuery dans votre CSS avec! Important. – zvona