Monday, December 15, 2014

"Responsive Web Design with CSS3 and HTML5" by Ben Frain Review

As the title of the book implies, it is focused very much on responsive web design, and how HTML5 and CSS3 contribute to this.  If you’re well-versed with responsive web design, CSS3 and HTML5, this book is not for you.  If you feel like there are gaps in your knowledge of any of those three aspects, this book may be of great benefit to you.  Even if the end result is simply knowing what you don’t know.

For those of you new to CSS3, HTML5 or responsive web design in general, this book is an excellent source of information.  It covers the theoretical aspects of responsive web design, down to practical, real-world problems you face with some elements (i.e. iFrames).  HTML5 is introduced fairly well, supplying information about the new HTML elements, as well as outlining HTML documents.  CSS3 is covered very thoroughly, and should leave you with a working understanding of the new features of CSS3, as well as a basic understanding of CSS in general.

The last chapter of the book is dedicated to cross-browser issues, and designing for high resolution devices.  This is beneficial, as some issues are recurring, and this chapter gives you a good basis from which to design solutions to these issues.

The book generally puts the chapters in context, explaining why responsive web design (or certain aspects) are worthwhile in a project, and when something like a dedicated mobile site is a better solution.  It offers numerous images, and explains what makes the example image good or bad (in terms of responsive web design), while also giving you the background understanding of how grids are created, while suggesting some grid frameworks.  The author has managed to cover every topic I feel a responsive web developer and designer needs to know.  Some topics are most beneficial when studied with previous knowledge of HTML and CSS, but even with little to no knowledge, you should be able to follow the chapters and understand what is happening.