Author: Rob Crowther
Reviewer: Mike James
Can a fun approach to technical topics ease the learning process? Is this a good way to learn about HTML5 and CSS3?
When you first look at this book it seems like it is going to be just another attempt at presenting its topics in a novel way. It is full of cartoons and quotes, boxouts and hand-drawn diagrams. It really doesn't look like a serious book. However, if you start to read it rather than just look at it, what you quickly realize is that this is not a low-level introduction. Lurking in there is some advanced material - and this is something of a problem.
For example, the first chapter is about the semantic use of HTML5 and it starts off nice and slow, getting across the big idea of using the markup to indicate the structure rather than the layout of the page. Then, towards the end, there is a section on extending HTML with custom attributes. This is reasonably well explained, but why tackle a topic that isn't related to the basics of HTML at this particular point?
It also shows you how it used to be done with examples, but then only explains that now you should use data-* where * means a "wildcard". Well, yes, if you read every word it makes sense and it is explained, but why spend so much on the old, or perhaps wrong, way to do it and then not give an example of the right way? This is the sense in which the book conceals some advanced topics in among the cartoons.
From the opening look at HTML5 we quickly move on to HTML5 forms - again a fairly detailed look. Chapter 3 is on the single topic of graphics using Canvas and SVG. Chapter 4 deals with the audio and video tags. Chapter 5 moves on to browser based APIs - drag and drop, the history API and chapter 6 goes even deeper into APIs with geolocation, websockets, and off line apps including data storage. This brings the HTML section of the book to a close.
Part 2 is all about CSS and Chapter 7 deals with the use of selectors, including a little about jQuery. Chapter 8 is about layout and concentrates on the new and advanced features of CSS such as calc, media queries and so on. Chapter 9 explains animation, Chapter 10 borders and backgrounds and the final chapter deals with text and fonts.
Overall, this is a good book if you want a varied approach to the topics with some light hearted cartoons thrown in. The book,s subtitle "A user-friendly reference guide" does describe it quite well.
Overall this is a book for a lazy, but capable, reader. I liked it and, as long as you are not expecting a beginner's book, I can recommend it.