Einem Div können mehrere Klassen zugewiesen werden. Trennen Sie sie einfach im Klassennamen durch Leerzeichen wie folgt:
<div class="rule1 rule2 rule3">Content</div>
Dieses Div entspricht dann allen Stilregeln für drei verschiedene Klassenselektoren : .rule1, .rule2und .rule3.
CSS-Regeln werden auf Objekte auf der Seite angewendet, die ihren Selektoren in der Reihenfolge entsprechen, in der sie im Stylesheet vorkommen. Wenn zwischen zwei Regeln ein Konflikt besteht (mehr als eine Regel versucht, dasselbe Attribut festzulegen), bestimmt die CSS-Spezifität , welche Regel hat Vorrang.
Wenn die CSS-Spezifität für die widersprüchlichen Regeln identisch ist, hat die spätere (die später im Stylesheet oder im späteren Stylesheet definierte) Vorrang. Die Reihenfolge der Klassennamen auf dem Objekt selbst spielt keine Rolle. Bei gleicher CSS-Spezifität ist die Reihenfolge der Stilregeln im Stylesheet von Bedeutung.
Wenn Sie also Stile wie diesen hätten:
.rule1 {
background-color: green;
}
.rule2 {
background-color: red;
}
Da dann beide Regeln mit dem div übereinstimmen und genau die gleiche CSS-Spezifität haben, kommt die zweite Regel später, sodass sie Vorrang hat und der Hintergrund rot ist.
Wenn eine Regel eine höhere CSS-Spezifität hatte ( div.rule1höhere Werte als .rule2):
div.rule1 {
background-color: green;
}
.rule2 {
background-color: red;
}
Dann hätte es Vorrang und die Hintergrundfarbe wäre hier grün.
Wenn die beiden Regeln nicht in Konflikt stehen:
.rule1 {
background-color: green;
}
.rule2 {
margin-top: 50px;
}
Dann werden beide Regeln angewendet.