on March 23, 2012
Ok, first of all, contrarily to what David claimed on the back of the book, this isn't an entertaining read.
However, I won't fault this book for that. Imho, CSS is designed to be used by both artists and folks with an engineer background, but neither audience are likely to be extremely pleased with the end result so expecting a book about css to entertain anyone is expecting too much.
With that out of the way, this book is solid if you can stick with it.
It isn't really a reference and advanced css users won't find anything new in here, but if you are totally new to CSS or if you learned css on the go during projects and you feel that there are gaps in your css knowledge (I fell in the later category when I got the book), then I heavily recommend it.
The author takes his time explaining everything in some details, gives pertinent examples (without getting too engrossed in them at the expense of what he's trying to explain), gives plenty of illustrations to show what he's talking about (which is important for something as visual as CSS) and even includes a tutorial at the end of each chapter.
Also, the author doesn't lose track of the fact that his readers will want to apply what he's talking about in real world project so to that end, he discuss regular pitfalls of css development (ex: browser defaults) and how to address them. He also does a good job at discussing in what context some features are desirable.
The book does have some flaws...
In the tutorials, I find that the author doesn't put enough emphasis on the end result he wants to achieve. He should show the initial page, then discuss what type of display he wants and then discuss the step by step approach to get there (this is how it works in real life projects after all) rather than only show what he wants to get at the very end of the tutorial.
Also, while the author probably covers 99% of what the non-guru will want to know, there are some slight gaps (for example, I would have liked to see greater coverage of the 'auto' value for some properties), but then I guess that's true of any introductory work.
Furthermore, the book does show some slight signs of aging as it was written in 2009 and it shows in 2 ways. First, the book covers IE 6 bugs in some details along with work-arounds to fix them and while this was relevant 3 years ago (when IE 6 still had close to 20% of the browser pie), less than 1% of web users use IE 6 now so it's no longer that meaningful unless you cater specifically to corporate users using very dated browsers. Second, CSS3 is gaining traction and the author only dedicate 1 fairly short chapter to it. I think perhaps the parts of the book that talk about IE 6 and earlier should be phased out and the pages saved could be used to talk about css 3 more for the next edition of this book.
And finally, the book does make sure that CSS beginners from non-engineering background (ie, artists) will grasp the material so the author does repeat himself a couple of times and at times seem to state the obvious which might frustrate some readers with a more technical background, especially if they have prior experience with css. However, there is nothing preventing those readers from skimming over the parts that get too long in order to get to the good stuff (the parts where they are more shaky) at which point they will undoubtedly appreciate how thorough the author is (I know I did).
So, this book is not perfection, but I think it's close enough to it (for it's target audience) to warrant five stars.
on April 23, 2010
This book covers all aspects of CSS from styling text to building complete web pages using Cascading Style Sheets. Each chapter starts with basic explanations and finishes with a tutorial - and each chapter, in turn, builds on previous topics. In sum it is comprehensive, clearly written, and interspersed with enough good humor to make it an enjoyable read.