Review: Everything you know about CSS is wrong!
It must be said to start with that the title of this book is a bit overstated. Rather than ‘Everything you know about CSS is wrong!’, it would be more appropriately called ‘Some of the things you know about CSS layout techniques will be out of date in the near future (arguably)’. However I can see that this wouldn’t sell as many copies. It would also fail to capture the polemical flavour of the authors’ central argument: that web designers should seize the opportunity offered by the imminent release of Internet Explorer 8 to embrace CSS display tables for layout and abandon rubbishy old floats and faux columns for good.
In making a case for this, the authors put across some nice points about how CSS layout techniques we have come to take for granted make simple layout tasks a heck of a lot more complicated than they really should be. This is a valid topic which a lot of books about CSS tend to skirt around. The book also contains a short introduction to the CSS table display properties, a simple set of examples, discussion of the pros and cons of using them (mostly the pros though) and a chapter on considering older browsers. To conclude there is a look forward to the layout options that will be available (eventually) in CSS3.
The major criticism the book tends to provoke (one the authors foresee, but don’t entirely manage to assuage) is that it is too soon to start using layout techniques which are unsupported by IE6 and, especially, by IE7. If we haven’t got rid of IE6 yet, which has been around since 2001, then how long will it take before we can really ignore IE7? The authors’ suggestion of providing simplified versions of designs for the most popular browser is unlikely to go down well with a lot of clients.
There also seem to be potential accessibility problems with CSS display tables unless the designer is careful. The authors downplay the importance of source order for accessibility, quoting research stating that “the source order of a web page is likely to be of little relevance to the majority of screen reader users”. I guess I might accept that for simple layout tables like the ones demonstrated in this book. However the major accessibility problems in traditional HTML table layouts were caused by endlessly nested tables messing up source order utterly and making pages impenetrable to a screen reader user. If this kind of situation isn’t going to be repeated, then CSS display tables presumably need to be nested in moderation and care needs to be taken that content spread across cells reads in an acceptable order when linearised.
On the plus side, it is always nice to know about another way of doing things and CSS display tables are a solid addition to anyone’s skill set for when you eventually find yourself in the lucky position of not having to bother about IE6 or 7.
In general, I found the book a refreshing read. It provides a coherent argument, is well written in a concise way and provokes you to question fundamental aspects of how you work. Not many web design or IT books manage this and it would be nice if more of them did.
Everything You Know About CSS is Wrong! by Rachel Andrew and Kevin Yank is published by Sitepoint.