Freitag, 17. Juli 2009

!important - go home!

Eine wirkliche Seuche für eine Frontend-Infrastruktur ist die Verwendung von !important-Regeln. Einmal damit angefangen, verbreitet sich diese Auszeichnung wie ein Geschwür in sämtlichen Stylesheets. Wirklich übel wird es dann, wenn Elemente ohne Angabe einer Klasse oder ID mit !important ausgezeichnet werden.

Wir haben in unseren Stylesheets momentan solch einen Zustand. Da es sich um sehr viele und teilweise komplexe Selektoren handelt, reicht es leider nicht, die Verwendung einfach zu verbieten. Es muss ein Zustand erreicht werden, welcher die Verwendung von !important nicht mehr "provoziert".

Folgende Dinge halte ich dabei für angebracht:


  • Verwendung möglichst simpler Selektoren in Stylesheets, welche in mehreren Projekten in Form von Modulen verwendet werden (dies ermöglicht ein einfaches lokales Überschreiben)
  • Genaue Kenntnis der CSS-Kaskade
  • Kenntnis des Jasmin-Servlet-Algorithmus zur Festlegung der Stylesheet-Reihenfolge
  • Workshops zu den beiden letztgenannten Themen
  • Reporting der Verwendung von !important in Form einer Fehlermeldung


Es drängt sich natürlich sofort der Gedanke einer ähnlichen Behandlung des style-Attributs auf. Hier trifft jedoch Theorie auf die Praxis eines marketinggetriebenen Arbeitsumfelds. Das style-Attribut hat ebenfalls jede Menge Nachteile. Allerdings wirkt es sich immer nur auf ein spezielles Element aus und generiert dadurch nicht so unangenehme Seiteneffekte wie die !important-Regel.

Kommentare

Ansicht der Kommentare: (Linear | Verschachtelt)
Noch keine Kommentare

Kommentar schreiben


Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.

Um maschinelle und automatische Übertragung von Spamkommentaren zu verhindern, bitte die Zeichenfolge im dargestellten Bild in der Eingabemaske eintragen. Nur wenn die Zeichenfolge richtig eingegeben wurde, kann der Kommentar angenommen werden. Bitte beachten Sie, dass Ihr Browser Cookies unterstützen muss um dieses Verfahren anzuwenden.
CAPTCHA

 
 

Blog abonnieren

RSS 2.0 Feed

Suche

Kalender

Zurück Februar '12 Vorwärts
Mo Di Mi Do Fr Sa So
    1 2 3 4
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29        

Verwaltung des Blogs

Blogroll

Projects/Web

vCard

  • Nico Steiner
  • www.nicosteiner.de
  • Karlsruhe/Germany
  • Senior Frontend-Developer at 1&1