Hallo,
Zunächst erben alle <a> zwar die Eigenschaften von <div id="main">, aber warum sollte die Klasse eines Nachfahrenelementes das nicht selektiv überschreiben können?
Du sagst es schon fast: Zuerst erben die Unterlemente die Formate des Divbereichs. CSS spezifiziert aber, dass über eine ID gegebene Formate einen höheren Rang haben als über Klassen gegebene Formate, daher überschreiben ID-Formate alle Klassenformate, wenn es widersprüchliche definitionen gibt.
Wenn ich für das Beispiel da oben folgende Styles notiere:
#main { color:red; }
.anwahl { color:green; }
> bekomme ich doch selbstverständlich "Home" und "Termine" in rot, aber "Produkte" in grün angezeigt.
Ja? Wenn du nur dem <div id="main"> die Schriftfarbe zuweist, müssten die Links doch in der Standardfarbe des Browsers angezeigt werden.
Versuche:
~~~css
a { color:blue; }
#main a { color:red; }
.anwahl { color:green; }
Bei mir ist alles rot.
Noch selektiver wäre
#main a.anwahl { color:green; }
was aber in diesem Beispiel auf das Gleiche hinausläuft.
Ich denke das ist eine mögliche Lösung für den Threadersteller.
Gruß;