Zbudowałem edytor do użytku przez użytkowników, ma on paletę stylów do wyboru, w tym przykładzie będziemy je nazywać .p1
i `.p2 '. Problem polega na tym, że nadpisują się nawzajem w zależności od kolejności, w jakiej pojawiają się w arkuszu stylów.CSS Controlling Cascade
Nie mogę znaleźć sposobu, który to rozwiąże, ponieważ nie wiem, jak te panele mogą być zagnieżdżone.
Ten przykład jest znacznie uproszczony i nie mogę kontrolować dokładnie, gdzie znajdują się elementy takie jak tag, mogą one być zagnieżdżone w tabelach, listach, akapitach lub dowolnych innych znacznikach na dowolnej głębokości. Byłoby to również zastosowanie do nagłówków i innych elementów podrzędnych, które potrzebują tam styl niestandardowy (np H1, ul ...), aby dobrze wyglądać w kontekście faktu, że jest on pokazany w.
.p1 a {
color: red;
}
.p2 a {
color: green;
}
<div class="pl p2">
<a href="#">Hello 2</a>
<div class="pl p1">
<a href="#">Hello 2-1</a>
<div class="pl p2">
<a href="#">Hello 2-1-2</a>
</div>
</div>
</div>
<div class="pl p1">
<a href="#">Hello 1</a>
<div class="pl p2">
<a href="#">Hello 1-2</a>
<div class="pl p1">
<a href="#">Hello 1-2-1</a>
</div>
</div>
</div>
Grałem z: nie selektorem, a także używając wszystkich: domyślnie, na dzieciach, ale nie miałem szczęścia.
Tak, to jest podobne do tego, do czego zmierzałem –