Hallo,
da die Oracle JavaFX Forum Software wirklich schlecht ist, versuche ich einmal hier mein Glück.
Ich habe zwei SplitPanes in meinem Scene-Graph, wobei die 2. ein Unterelement der ersten ist. Wenn ich der “äußeren” SplitPane eine CSS-Class zuordne, erhält die “innere” immer die selben CSS Attribute. Ich möchte aber z.B. den Divider der “äußeren” rot setzen und den der “inneren” auf grün. Ich verwende aktuell folgenden CSS-Code:
ja, ich habe eine “inner-splitpane” Klasse in CSS bei der ich den Wert auf “green” gesetzt habe.
Dennoch werden beide SplitPanes in rot angezeigt, da anscheinend im Scene-Graph die Werte der “outer-” an die “inner-Splitpane” vererbt werden (im Scene-Graph). Was mache ich nur falsch?
Warum wollte man denn CSS-Vererbung verhindern wollen? Das von dir beschriebene “Phänomen” ist ja grade der Sinn von CSS. Logisch, dass Äussere Elemente an innere weitervererben, sonst müsste man die inneren ja wieder selbst umgestalten und der Sinn von CSS wäre verfehlt. Das hat natürlich zur Folge, dass du innere Elemente widerum selbst umgestalten musst, wenn sie anders als die äusseren aussehen sollen. Aber um das Ganze zu vereinfachen, besteht immerhin die Möglichkeit für CSS-Klassen einen Gültigkeitsbereich für Elemente zu definieren. Mehr dazu wie bereits gesagt, auf selfHTML.