Author: Zoe Mickley Gillenwater
Publisher: New Riders, 2010
Aimed at: Early adopter of CSS3
Pros: Well written, informative and explains ideas well
Cons: Expects you to do everything from first principles
Reviewed by: David Conrad
This is a difficult book to review because it is so easy to get upset about the technology and blame the book!
The most important thing to say is that this isn't a beginner's book. It expects you to know quite a lot about HTML and CSS basics. It also doesn't make use of any programs to create web pages - everything is from first principles.
Chapter 1 starts the book off with a look at what's new in CSS3. Notice that you don't get a gentle introduction to CSS2 or even what CSS is for. It also provides an overview of the current state of CSS3 adoption and how to mange the fact that not all browsers support it yet. ??This is the first place where I thought that the whole enterprise of using CSS3 was a getting a little silly. To quote:
The reason put forward is that CSS3 reduces your workload building and maintaining pages. Personally I think that using an HTML design program is a far better way to reduce your work load than hand-coding CSS3. But let's accept for now the idea that raw CSS3 is the way to go.
The chapter then presents a case study of a conversion of a site from CSS2 to CSS3. The case is made that the site looks better - true - and that with CSS3 is it faster - but only 15% faster in a modern browser. Next we have an appraisal of the use of prefixes. This is an excellent discussion of the idea and it convinced me beyond a shadow of doubt that the whole idea was completely silly - of course this wasn't the author's intent. Finally the chapter deals with how to handle browsers that don't support CSS3 and the most sensible advice is to just put up with what it looks like but if you insist you can struggle to make it all work no matter what.
After Chapter 1 the book settles down into a set of examples - which you might have expected given its subtitle "A Project-Based Guide to the Latest in CSS".
Chapter 2 is about "Speech Bubbles" which is essentially about ways of display text to good effect without the use of image files. Again there is consideration of workarounds for IE and other exceptions. Nice though CSS3 is, by this point you are asking yourself if it is worth the effort.
Chapter 3 is called Notebook Paper and is about mixing text and images.
Chapter 4 is on styling images and links and introduces the more advanced attribute selectors.
Chapter 5 extends the look at selectors with pseudo-classes.
Chapter 6 is about customizing designs to different screen sizes using media queries.
Chapter 7 looks at creating multi-column layouts without using floats. This is all great but then you are brought down to earth with a consideration of what actually works now - and the answer is not a lot.
The day that CSS3 is supported universally will bring a much simpler and more powerful way of creating web pages. If you want to get ahead then this is a great book. It is well written, informative and explains the ideas well. My main complaint is that CSS3 is still not well enough supported to make it safe to venture into the water. I'm also not convinced that handcrafting pages is the most productive way to do the job.
But as I said at the start of the review these are not criticism of the book - which is recommended if you want to use CSS3 to create pages now.