This is a review of the book Beginning CSS Web Development: From Novice to Professional, by Simon Collison. Published by Apress. ISBN: 1-59059-689-7.
Let me start by saying I never really considered myself a CSS beginner when I picked up this book. I’ve successfully used CSS for text formatting comfortably for a couple of years. But when it came to using CSS for positioning and layouts, I’d run into frustrating problems immediately, and always found floats to be counter-intuitive. I’ve read many CSS positioning tutorials on the web and none of them ever fully resolved the conceptual blocks I’ve had. Given the fact that I’ve been entirely self-taught when it comes to web development, I figured a book with a title like Beginning CSS Web Development seemed appropriate to fill in the gaps of my understanding.
The first four chapters of this book covered the basics of CSS and went over text styling techniques I was already familiar with. Even so, I found the writing exceptionally clear and learned a few more subtle techniques that were immediately helpful in improving some of my web designs. Simon Collison isn’t just writing a series of lessons on CSS – he also offers general guidelines about web design issues, such as recommendations on how to organize your CSS files, and tips for picking an appropriate font. This I feel is especially useful for readers who want to get a good foundation in general, modern web development principles.
The chapter on styling forms was very handy, as it discussed three different ways forms are often laid out on the web, and answered questions I had on the pros and cons of each. By the time I had finished reading Part 1 of the book – which I had assumed would simply be a remedial overview of CSS – I had found numerous ways my practical, working knowledge of CSS had been improved.
The two most valuable chapters to me were chapters 10 and 11. Chapter 10 included concise and easy to understand explanations of float-based positioning, when it can be necessary to use spacer divs, and the way clearing floated elements should be done. This was the book I needed to clean up my spotty understanding of CSS positioning, and I immediately obtained results I applied in some of my web designs. Chapter 11 also provided a good reference for common two- and three-column layouts, and a short, but good explanation of the CSS box model.
The chapter on web accessibility was fairly minimal, which is to be expected in a beginner-oriented book, but I did find some of the tips on making CSS available to embedded devices insightful. The final chapter is a start-to-finish walkthrough of a CSS-based web page that brought together many of the lessons taught earlier. A CSS reference and good index round out the remainder of this 448-page book.
I could not find any significant copy editing errors in this book, and would highly recommend it for anyone with a background in CSS like my own. I also feel this is an excellent book for newcomers to CSS who want a good foundation in modern best practices from a book that is both practical and readable.
You can buy the book at Bookpool (this is not an affiliate link).