Genau, das ist das Problem an der Sache, es ist Performance. So kam ich da auch gestern wieder zufällig auf den Artikel, suchte aber eigentlich was anderes.
Das Beispiel mit Javascript ist gut und da ist es in der Tat links nach rechts. Da suche ich z.B. auch erst nach "#uklist" und darin dann nach "a", denn ich brauche nur die "a" da drinnen und nicht alle auf der Seite.
CSS ist eben verwirrend, daher die Frage. CSSTricks, Kulturbanause und noch etliche andere. Alles schön beschrieben, aber jeder sagt was anderes.
Ich für meinen Fall ging eigentlich auch von links nach rechts aus, daher sind meine Rules auch so aufgebaut "#content li a" oder eben "#navi li a" in der Hoffnung, dass der dann als erstes den entsprechenden Bereich sucht. Also erst "#content", dann, wenn gefunden, in dem Bereich dann. alle "li" und darin eben die "a". So wie jQuery eben.
Aber wenn das nun von rechts nach links geht, dann ist das ja so Mist. Dann müsste der ja erst ALLE "a" im DOM suchen, in der Ergebnismenge dann schauen, ob da ein Elternelement "li" vorkommt und dann auch noch, ob es in "#content" ist. Ist es dann z.B. nicht in "#content", sondern in "#footer", dann wäre die Arbeit umsonst gewesen.
und so was da wäre dann noch sinnloser: "#navi li a .nav1" Wenn das von rechts nach links geht, dann kann ich gleich einfach nur ".nav1" schreiben, denn die gibt es ja nur da 
Aber ja, wenn ich mir dann so was wie Bootstrap ansehe, dann schaut das auch wieder nach von "rechts nach links" aus. Daher nehmen die wohl auch so verdammt viele einzelne Klassen.
Interessant: https://stackoverflow.com/questions/5797…5813672#5813672
Der sagt auch rechts nach links, aber auch, dass bei kleinen Seiten eigentlich links nach rechts besser wäre. Erklärt aber dennoch ganz gut, warum es denndoch rechts nach links ist.