Everything You Know About CSS is Wrong!

February 3, 2009
Everything You Know about CSS is wrong! Everything You Know About CSS is Wrong!

by Rachel Andrew, and Kevin Yank

To hone my skills as an application developer, where visual design is a weakness, I was intrigued by this title. A rather thin title around 100 pages and color illustrations, it looked promising.  I was hoping for a silver bullet, but instead was left disappointed.

The book first outlines the problem of CSS, in general its lack of support for a grid layout with CSS in IE7 and below.  Many past hacks have been implemented to enable this with CSS, which reminds me exactly why I dislike CSS.  Otherwise, grid layouts are easily handled by tables, but they were never intended for complicated layouts that developers have thrown together.  This book argues that IE8 will change all that and solve grid layout problems.

I believe its primary purpose is to give developers a road map to start implementing CSS tables for design layout.  Transitioning to use CSS tables will be a short 2-3 years as a majority of IE users upgrade.  It will be a sacrifice of either time or the final layout for older browsers.  If we need to support a pixel perfect design then it will take time to design specifically for older browsers.  If the design does not need to be the same across browsers, then several techniques are discussed that can be more vertical than a grid.

This is why CSS is so painful and why I don’t want to focus on CSS design, normally I’d stick to html tables if anything was too complicated.  In my controlled environment, it is easier for me to transition to using CSS tables.  For others, this can help make the transition quicker.

CSS has been a slow moving train and the authors point out that it is both the browser’s and designer’s fault.  We need to keep up to date with features that are implemented and utilize them early.  We as developers tend to complain about the lack of standards, however we don’t implement the new features that we have available.  Otherwise, browsers creators have no reason to implement standards.  I think it comes down to a triangle of browsers updating and designers updating their web layouts, which will follow with users upgrading their browsers more often.