Hauptmenü

Untermenü

Advanced CSS - Pro und Contra - Mehrfachselektoren

1. Vorwort

Wie ihr ja wohl hoffentlich wisst, kann man einem Element auch mehrere Klassen oder IDs zuordnen. Da gelten die üblichen Regeln der Spezifität und besonders das Kaskadierungsprinzip, dass bei Gleichwertigkeit immer die letzte CSS-Anweisung gewinnt.

2. Das kleine Für

Ja, ihr habt richtig gelesen diesmal gibt es nur ein kleines Für. Warum dem so ist, werdet ihr jetzt erfahren. Zunächst mal eine einfache Möglichkeit, wo mit Mehrfachselektoren gearbeitet werden kann.


span.blubb
{
  color#00f;
  font-size0.8em;
  ...
}
span.hinweis
{
  text-transformuppercase;
  color#f00;
}
<p>
  <span class="blubb">Bla blubb schwall</span>
  <span class="blubb hinweise">Laber jodelblah</span>
  <span class="blubb">Sülz schwall</span>
</p>

Sieht so weit ja ganz gut aus. Man definiert eine spezielle Klasse (hinweis), die die "Standardanweisung" blubb um eine zusätzliche Eigenschaft (text-transform: uppercase;) ergänzt und eine weitere (color: #f00;) überschreibt.

3. Das ganz große Wider

Aber!!!. So etwas kann ganz schnell außer Kontrolle geraten, wie auch die Kuba-Krise. Da hat es damals fast gerummst. Das Problem ist ähnlich wie beim Drogenkonsum. Wenn man einmal damit angefangen hat, kann man nur noch schwer davon lassen. Auch wenn man selber/die Anwendung dabei Stück für Stück vor die Hunde geht. Denn irgendwann braucht man eine immer höhere Dosis, um mit dem Alltag/der Anwendung klar zu kommen. Und das Ergebnis sieht dann zum Beispiel so aus:


<div class="bla blubb blubber laber schwall">

4.Mein Tipp

Lasset ab von diesem Tun! Setzt Mehrfachselektoren wirklich nur in Ausnahmefällen ein. Das Konzept wirkt auf den ersten Blick sehr einleuchtend und vor allem elegant. Aber glaubt mir, irgendwann habt ihr da einen ellenlangen Rattenschwanz und wenn ihr etwas ändern wollt, so müsst ihr euch im Extremfall durch alle CSS-Anweisungen wühlen, um herauszufinden, wo ihr was anpassen müsst.

Jetzt wird sicher der ein oder andere von euch einwenden, dass man mit Mehrfach-Selektoren "Redundanzen" vermeiden kann. Also zum Beispiel doppelte CSS-Anweisungen, die so nicht nötig wären. Hey, Leute! Hier geht es nicht um Datenbanken und Normalisierung. Und selbst da gibt es die Denormalisierung. Also, ein kleines Fazit zum Abschluss dieses Themas.

"Man kann's auch übertreiben" [Quelle: unbekannt]

zurück zum vorherigen Abschnitt weiter zum nächsten Abschnitt