Fortgeschrittene CSS-Techniken (Ingo Chao & Corina Rudel)
29. Oktober 2008
Üblicherweise verlose ich ja die Bücher, die ich hier im Blog bespreche. Zum einen, weil ich Fachbücher eigentlich gar nicht so gerne mag, zum anderen, weil die meisten Bücher für Einsteiger sind, zu denen ich mich schon länger nicht mehr zähle.
Aus der Fülle an CSS-Büchern sticht dieses klar hervor, weil es sich an Profis richtet, und das ist toll! Und daher behalte ich es diesmal ganz für mich allein :-)
Der erste Satz lautet »CSS ist nicht einfach.« Und damit ist die Marschrichtung auch schon vorgegeben. Ingo Chao und Corina Rudel erklären eben nicht nur, wie man mit CSS umgeht, sondern wie CSS wirklich funktioniert: Was passiert eigentlich wirklich, wenn ein Objekt gefloatet wird? Und wie sind die Wechselwirkungen mit den anderen Objekten? Bereits nach 20–30 Seiten begreift man komplett, warum es so schwierig ist, klare CSS-Spezifikationen zu schreiben. Und warum die verschiedenen Browser teilweise so unterschiedliche Ergebnisse produzieren.
Das erste Drittel kümmert sich um eine ganze Reihe von grundsätzlichen Konzepten, die auch bei professionellen Webdesignern wie mir oftmals nicht gänzlich verstanden werden: Kollabierende Margins, vertikale Zentrierung, der Block Formatting Context und die mysteriösen Inline-Blocks. Wer das Buch aufmerksam liest, wird verstehen, was genau dahinter steckt. Und man wird vielleicht in Zukunft weniger frickeln müssen, um seine CSS-Wehwehchen zu lösen. Denn genau darum geht es doch: Ich selber habe zwar kaum Probleme mit dem Einsatz von CSS – weil ich es am Ende doch immer irgendwie hinbekomme, wie es sein soll. Mit dem Buch kann ich aber nun exakter bestimmen, warum eine bestimmte Anweisung mein Problem gelöst hat.
Immer mit dabei: Der Blick auf die Browserkompatibilität. Es wird vermittelt, welche grundsätzlichen Probleme der IE besitzt, vor allem in Bezug auf den Block Formatting Contect. Dadurch kann man sich viele Bugs, die einem stets wie Voodoo vorkamen, fast schon logisch erklären. Wenn man will. An manchen Stellen übertreiben es die Macher jedoch ein bisschen, wenn es um die Genauigkeit von Browserbugs geht – aber das ist wahrscheinlich eine Berufskrankheit.
Zwei Punkte möchte ich noch als Besonderheiten hervorheben:
- Die Autoren sehen ein großes Potenzial in CSS-Tabellen (ähnlich wie Rachel Andrew in diesem Artikel). Mit DIVs um sich zu schmeißen, um dann eine CSS-Pseudotabelle daraus zu rendern, wird als freudige Aussicht auf eine bessere CSS-Zukunft empfohlen. Ich bin in dieser Hinsicht etwas kritischer eingestellt – Auch wenn DIVs laut Spezifikation keine semantische Bedeutung haben, so wird der HTML-Code dadurch dennoch unnötig tief verschachtelt und unübersichtlich. Hier wären ein paar Worte nötig gewesen, dass man das auch anders sehen kann.
- Inline-Blocks werden (für mich) erstmals richtig gut erklärt. Und auch darauf hingewiesen, dass man sie im IE ganz gut über eine völlig andere Technik simulieren kann. Dies ist sehr spannend und an dieser Stelle habe ich am meisten gelernt.
Insgesamt ein sehr empfehlenswertes Buch für alle, die CSS nicht nur anwenden, sondern auch wirklich durchdringen möchten. Mit eine klaren Sicht auf die Zukunft (Der IE8 wird bereits mit einbezogen, obwohl zum Drucktermin nur als erste Beta verfügbar), und trotzdem stets mit Hinweisen, wie auch IE6 und co. versorgt werden können. Was vielleicht fehlt, ist ein ganzer Teil mit einem Ausblick auf CSS3. Dafür hätte man den Praxisteil ein ganzes Stück kürzen können, weil darin vieles gemacht wird, was in anderen Büchern auch gemacht wird.
Das Buch ist im Galileo-Verlag erschienen und kostet völlig realistische und gut angelegte € 39,90. Beigelegt ist eine CD mit den Code-Beispielen und einigen Videotutorials zu YAML und YUI Grids, die ich aber noch nicht angesehen habe.