Ich habe ein Projekt, das in die Eltern-App aufgeteilt ist, und mehrere wiederverwendbare Kind-Komponenten in separaten Repositories. Ich möchte CSS-Standardvariablen in diesen untergeordneten Komponenten definieren, die von der übergeordneten App überschrieben werden können, jedoch kann ich dafür nicht die richtige Syntax finden. Hier ist, was ich versucht habe:CSS-Variablen - Variable deklarieren, wenn nicht bereits definiert
/* parent */
:root {
--color: blue;
}
/* child */
:root {
--color: var(--color, green);
}
.test {
width: 200px;
height: 200px;
background: var(--color, red);
}
https://codepen.io/daviestar/pen/brModx
Die Farbe Blau sein sollte, aber wenn das Kind :root
definiert ist, die Farbe ist eigentlich rot, zumindest in Chrome.
Gibt es einen richtigen Ansatz dafür? In SASS können Sie Ihren Kindvariablen ein !default
Flag hinzufügen, was im Grunde bedeutet "deklarieren, wenn es nicht bereits deklariert ist".
ja! du hast mich zu meiner lösung geführt .... – daviestar
passt es dir? – Hitmands