306 votes

Règle CSS s’applique uniquement si l’élément possède deux classes

Disons que nous avons cette balise:

<div class="abc"> ... </div>
<div class="xyz"> ... </div>
<div class="abc xyz" style="width: 100px"> ... </div>

Est-il possible de ne sélectionner que l' <div> qui a abc et xyz des classes (le dernier) ET de remplacer son inline largeur pour faire la largeur effective être 200px?

Quelque chose comme ceci:

[selector] {
  width: 200px !important;
}

Je ne suis pas sûr si !important remplacerait css aussi.

Veuillez noter que:

  1. Dans la situation réelle, je ne peut pas compter sur le nœud afin de les divs, de sorte que "Ce sélecteur sélectionne le dernier enfant" n'est pas la réponse.
  2. De même, je ne suis pas à la recherche pour les méthodes qui nécessitent la modification de la balise, je sais qu'avec l'ajout d' id attributs qu'elle deviendrait un non-problème.
  3. En fait, il n'y a pas 3 <div> éléments, il y a juste un, et il est modifié par un jQueru plugin en réponse à certaines de changement d'état. Si possible, je préfère ne pas accrocher à des fonctions de rappel et piggy-back d'une fonction lorsque la div a deux classes; mais ce pourrait être un dernier recours ...

P. S. Toutes mes excuses pour l'utilisation de jQuery balises pour une meilleure visibilité; il est lié en quelque sorte - mais si vous vous sentez qu'ils ont pas de place à tous, n'hésitez pas à les supprimer.

484voto

esqew Points 12195
<pre><code></code><p>... ou tout simplement :</p><pre><code></code></pre></pre>

12voto

John Hartsock Points 36565

Ci-dessous s’applique à toutes les balises avec les deux classes suivantes

s’applique aux balises div avec les deux classes suivantes

Si vous souhaitez modifier cette option à l’aide de jQuery

2voto

scrappedcola Points 6199

Si vous avez besoin d’une solution de progmatic cela devrait fonctionner en jQuery : ``

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X