Mit !important lässt sich eine Deklaration über fast alles andere stellen. Wer das braucht, hat meistens ein Problem an anderer Stelle.
- !important
Zusatz hinter einem Wert, der die betroffene Deklaration über gewöhnliche Deklarationen desselben Ursprungs stellt.
Beispiel: „Ein !important lässt sich nur durch ein weiteres !important überschreiben.“
Wie es wirkt
.hinweis {
color: #c0392b !important;
}Die Deklaration überspringt den Vergleich der Spezifität. Treffen mehrere !important aufeinander, entscheidet unter ihnen wieder die Spezifität.
Warum davon abgeraten wird
MDN wird ungewöhnlich deutlich: Using !important to override specificity is considered a bad practice and should be avoided for this purpose. Der Grund ist praktisch: Die nächste Korrektur braucht wieder ein !important, und nach ein paar Runden ist die Kaskade außer Kraft.
Wo es berechtigt ist
Bei Stilen, die von außen kommen und sich nicht ändern lassen, etwa aus einem eingebetteten Werkzeug. Und bei Hilfsklassen, die unter allen Umständen gelten sollen, etwa eine Klasse, die ein Element für Screenreader sichtbar lässt und optisch versteckt.