Moin!
Und wenn, wie von Sven angesprochen, mal ein Wert vererbet werden soll, gibt's dafür ja auch noch das Schlüsselwort inherit.
Wobei das Setzen des Werts "inherit" für eine Eigenschaft natürlich eine andere Wirkung hat als das Nicht-Setzen einer Eigenschaft.
"inherit" übernimmt den Wert des Elternelements, beim nicht-Setzen ist erstmal die Kaskade dran, bevor (bei erblichen Eigenschaften) die Vererbung ins Spiel kommt.
Hehe, ganz genau. :) Um mein Beispiel mal zu erweitern: Dieses CSS hier:
body { margin:0em; }
p {margin:1.5em 0 1em 0em; }
p.first {margin-left:2em; }
p.erben {margin: inherit inherit inherit 2em; }
führt zusammen mit diesem HTML-Code:
<body>
<p class="first">Eingerückt</p>
<p class="erben">Margin erben</p>
<p>Nicht eingerückt, sonst aber wie jeder andere Absatz</p>
</body>
Zu folgenden Ergebnissen:
Alle P erhalten grundsätzlich: 1.5em 0em 1em 0em.
P mit Klasse "first" erhält: 1.5em 0em 1em 2em.
P mit Klasse "erben" dagegen: 0em 0em 0em 2em - geerbt wird ja Body.
"inherit" ist also keine äquivalente Lösung, wenn man nicht erben will, sondern (wie im typischen Anwendungsfall für Klassen) eine allgemeine Definition eines Elements in einer Klassendefinition noch verfeinern bzw. spezialisieren will.
- Sven Rautenberg
"Love your nation - respect the others."