• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[FRAGE] Warum muss !important verwendet werden?

Z

zirzofer

Guest
mal ein ganz einfaches Beispiel:
HTML:
<div id='div'>
	<a id='cancel'>Cancel</a>
	<a id='ok'>Ok</a>
</div>

<style>
#div a{
	background: red;
}
#cancel{
	background: yellow;
}
#ok{
	background: blue;
}
</style>
Wieso werden #cancel und #ok nur wie gewünscht angezeigt, wenn ich !important verwende? eigentlich ist der selektor #cancel doch spezifischer als #div a?!!
und wie vermeide ich da die erwenden von !important?
 
Dein #div a ist spezifischer als #cancel: eine ID-Angabe mit einer Tag-Angabe gegen nur eine ID-Angabe. Was spezifischer ist, wird nicht an der HTML-Struktur festgemacht, sondern nur daran, wie der CSS-Selektor aufgebaut ist. (https://www.w3.org/TR/REC-CSS2/cascade.html#specificity)

Du könntest
Code:
#div a{
	background: red;
}
a#cancel{
	background: yellow;
}
a#ok{
	background: blue;
}
verwenden (alle Angaben gleich spezifisch, aber die "wichtigeren" kommen später...)
 
Zurück
Oben