Wieso ich keine Grid-Frameworks (mehr) benutze
Ich bekenne: Ich war ein großer Fan von Grid-Frameworks. Für jemanden, der grundsätzlich mit HTML-Prototypen arbeitet und dadurch weite Teile der Gestaltung einer Webseite im Browser macht, gibt es fast nichts Praktischeres, speziell wenn das Erstellen von Prototypen schnell gehen soll. Man nehme zum Beispiel 960.gs, binde dessen Stylesheets ein, verteile ein paar (leider meist wenig semantische) CSS-Klassen und eventuell noch ein paar <div>
-Elemente im Quellcode – fertig ist der Prototyp. Dabei ist relativ egal, ob man nun 960.gs oder eine der zahlreichen Alternativen wählt – die meisten Grid-Frameworks halten, was sie versprechen: Ein harmonisches, wohldefiniertes Layout schnell umzusetzen, ohne sich um Browser-Bugs Gedanken machen zu müssen.
Was bisher geschah …
Wie ich bereits beschrieb, halte ich Grid-Frameworks für eher wenig tauglich für Responsive Webdesign, letzteres aber für eine unbedingt zu verinnerlichende und in den alltäglichen Workflow zu integrierende Technik. Damit fällt nicht nur 960.gs (welches ohnehin mit fixen Breiten arbeitet) weg, sondern auch etliche andere Frameworks, z.T. selbst die Vertreter, welche ein fluides Grid bereit stellen – sie machen individuelle Anpassungen erforderlich, vertragen sich wenig mit „mobile first“, weil sie es nicht bedenken, und sind normalerweise spätestens dann unbrauchbar, wenn man eine grafische Vorlage zur Umsetzung angeliefert bekommt. Dann kann man sich genausogut gleich ein fluides Grid selbst bauen, der Unterschied im Aufwand ist eher gering.
Neue Frameworks
Nun ist es durchaus nicht so, dass sich seit 960.gs und Co. nichts getan hätte. Es gibt neue Ansätze und Ideen für fluide und responsive Grid-Layouts, die durchaus vielversprechend aussehen:
- Das Semantic Grid System setzt basierend auf dem CSS-Präprozessor LESS fixe, fluide und responsive Layouts mit verblüffend wenig selbst zu schreibendem Code um. Mein Problem damit ist die zusätzliche Schicht in Form von LESS – es würde den Rahmen sprengen, es hier detailliert zu erklären, aber ich habe noch keinen CSS-Präprozessor gefunden, der sich ohne Widerhaken in meine individuelle Arbeitsweise integriert.
- Das Golden Grid System hat aus meiner Sicht ähnliche „Probleme“ wie sein Vorgänger Less Framework – die grundsätzlichen Ideen dahinter sind gut und richtig, aber (z.T. durch Einschränkungen durch die fehlende CSS3-Unterstützung) praktisch nicht effizient umzusetzen. Benutzt man es konsequent, hat man damit zudem relativ viel Arbeit, weil es kaum Klassen vordefiniert (was vom Ansatz her grundsätzlich gut, aber eben aufwändig ist).
Gibt’s da nichts vom W3C?
Noch nicht. CSS3 enthält ein paar vielversprechende Module, welche das Layout-Problem im Web beheben sollen – letztlich kann man selbst die Layouts, die wir jetzt benutzen (müssen), als Zweckentfremdung der float
-Eigenschaft betrachten. Die Module Template Layout, Grid Positioning und Flexible Box Layout werden uns großartige Möglichkeiten geben und Grid-Frameworks vermutlich überflüssig machen, wenn sie denn erstmal mehr als nur ein Entwurf sind.
Bis dahin allerdings halte ich es für die sauberste und beste Lösung, Grid-Layouts individuell von Hand zu bauen, auch wenn das mehr Arbeitsaufwand bedeutet.