Betrachten Sie diesen HTML-Code mit den CSS-Klassen aa , bb und cc :
%Vor% Ich kann das class=cc
-Tag wie folgt auswählen: .aa > .bb > .cc
. In meinem Fall ist das .bb
-Tag jedoch manchmal nicht vorhanden, dh der HTML-Code sieht so aus:
Um alle .cc
in der Nähe von .aa
auszuwählen, müssen zwei CSS-Pfade angegeben werden:
Das funktioniert, aber gibt es keinen kürzeren Weg? Etwas Ähnliches:
%Vor%mit CSS oder etwas wie Stylus oder weniger?
Motivation: In der realen Welt sind "aa" und "bb" und "cc" etwas längere Namen, und es gibt mehr Sachen vor und nach den "aa" und "cc", und es wäre nett, das nicht zu tun müssen das Zeug duplizieren.
Bitte beachten Sie: In meinem Fall wird das nicht funktionieren: .aa .cc
, weil sonst zu viele .cc
s an anderen Stellen auf der Seite gefunden würden. Der .cc
s muss entweder unmittelbar unter dem .aa
oder unter .aa > .bb
liegen.
Für Stylus und Sass könntest du das tun ( Live-Beispiel für Sass ):
%Vor%Ich konnte keinen Weg finden, dies in einem One-Liner für Sass zu tun, aber für Less / Stylus / Scss könnte man das auch tun (Live-Beispiele für Scss , für weniger ):
%Vor%Das ist auch nicht so schön, aber immer noch besser als nichts:)
Wenn Sie Ihre Option verwenden möchten, die übrigens sehr interessant ist, können Sie ein korrektes Formular verwenden:
%Vor%aber die richtige Form würde:
%Vor%in den Stift:
%Vor%das ist alles.
Tags und Links css less css-selectors stylus