kann eine ganze css “.Klasse" haben eine Besonderheit !wichtig?
Arbeite ich stark in die jQuery UI-widgets und themeing ist immer schwer, weil ein versehen, ich muss arbeiten, um.
Betrachten Sie dieses problem:
<div id="node" class="ui-widget">
<div class="ui-widget-content">
</div>
</div>
dann das jquery -
<script>
$(function() {
$('#node').hover(function (){
$(this).toggleClass("ui-state-error");
});
});
</script>
Möchte ich die ui-state-error !wichtig für die verschachtelten div. Das ist pseudo-code, aber ich finde große Beispiele, dass dies geschieht, in dem Container css-swaps und Kinder (im Grunde genommen) ignorieren. Was noch schlimmer ist: wenn ich möchte in der Lage sein zu überschreiben in der jQuery-sagen "backgroundcolor=" ui-state-error:hintergrund-Farbe zu wissen, die 100% aller nicht in Stücke gehen, weil ich "wissen" nicht unbedingt, dass dieser hintergrund ist wichtig für das element in Frage.
hier ist eine Geige von einem Fall, in Punkt http://jsfiddle.net/WCuYH/1/
BEARBEITEN werde ich empfehlen, diese Frage wird geschlossen, da es bisher keine entsprechenden versuche zu Antworten, nur zu viel drift aus dem Wesen der ursprünglichen post
InformationsquelleAutor der Frage MacLovin | 2013-05-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zuerst aus
!important
bezieht sich auf eine bestimmte Erklärung in einer CSS-Regel. Es gilt nicht, zu einer Klasse. So, "kein" kann man nicht machen einen Klasse!important
.Sekunde aus, in der
!important
ist nur ein Teil der CSS-Spezifität. Sie können auch andere Möglichkeiten, um in der Regel eine speziellere Regel Vorrang haben (wie unter Bezugnahme auf eine id in der übergeordneten Kette, anstatt nur eine Klasse. Wenn ich Schreibe, CSS, die Verwendung !wichtig ist meine Letzte mögliche Wahl - ich würde viel lieber lösen Sie überschreibt mit anderen Spezifität Lösungen. In der Regel, wenn Sie alle, die CSS, das ist ziemlich einfach zu vermeiden, mit!important
. Wenn Sie überschreiben müssen, einige CSS, die du nicht kontrollierst, dann ist es manchmal praktisch.Wenn Ihr jQuery-code wird zum Umschalten einer Klasse auf das Objekt, dann haben Sie zwar Ihre CSS-Regeln, so dass das hinzufügen/entfernen diese Klasse bewirkt, dass die richtige CSS-Deklarationen haben Vorrang. Für uns, helfen Sie weiter mit, dass Sie Sie brauchen würden, um uns zu zeigen, dass die relevanten Teile des HTML-und CSS-so könnten wir raten, wie die Lösung Ihrer Rangfolge/Spezifität problem.
InformationsquelleAutor der Antwort jfriend00