Murach's HTML5 and CSS3 (4e)

Author: Zak Ruvalcaba and Anne Boehm
Publisher: Murach
Date: Mar 2018
Pages: 736
ISBN: 978-1943872268
Print: 1943872260
Audience: Web developers
Rating: 4.5
Reviewer: Ian Elliot
HTML5 and CSS is the core of the web - it's time to master both.

When it was launched, HTML 5 was greeted as the great saviour of the web. Now it is mostly ignored as the commonplace. CSS, on the other hand, never got such a reception from the masses, but today it remains puzzling to many simply because of how much of it there is! Murach's book on the pair of technologies that underpin the web page is big - but is it big enough?

The first question you have to ask yourself is, is it really necessary to master HTML and CSS? With so many web page editors and generators perhaps we can ignore it all, just as we ignore machine code or assembler. What you find is that, sooner or later, you will have to go in and modify code that was autogenerated or tweak something. For this you probably only need a passing understanding of the technology and the ability to look up the details. This is not the approach that this book takes. It assumes that you really want to know how to create web pages by writing the HTML and the CSS needed. For this reason it is very detailed.

The format might also be an issue for potential readers. Each topic, sometimes just a single tag or set of tags, is discussed on the left page and summarized on the right page - the standard Murach format. This means that some of the pages are half empty, but this is the price you have to pay to have a user-friendly layout. If you like this sort of discussion/summary presentation then you will like this book. If you are looking for a narrative presenting key ideas and concepts then you will be disappointed.


Section 1 is titled "The Essential Concepts and Skills" and consists of eight chapters. Chapters 1 and 2 introduce you to the basic tools, including editors and testing. Chapter 3 is where the details start to be presented in the form of HTML as a system of giving a page a structure. The key idea here is that HTML is about what sections the page has and CSS determines how these are displayed. Chapter 4 performs a similar service for CSS and basic attributes and selectors are covered. Chapter 5 introduces the box model, which is important for understanding how the layout elements are sized.  Chapter 6 deals with the fairly difficult topic of page layout using float and clear. This is where web page design starts to become more difficult as different blocks vie for position. After this we return to a simpler topic - lists, links and navigation in Chapter 7. Chapter 8 introduces the idea of media queries as a way of implementing responsive design. 



Section 2 take the material in Chapter 8 and builds on it to create more complex responsive design. Chapter 9 is about Flexbox, which is a complicated component, but one that simplifies things. Chapter 10 explains grid layout and brings the section to a close.

Section 3 is just more HTML and CSS skills. Chapter 11 is about images and icons, 12 is about tables, 13 is about forms, 14 deals with video and audio, 15 introduces fonts including printing and 16 explains animations, transitions and filters. This section is a mixed selection of topics that don't have much to do with each other, but they are generally second-level material.

The last two sections of the book leave the core topic to look at how to design and deploy a website in Section 4 and what other skills you might need in Section 5. The section on design and deployment isn't going to cover every situation and basically it tells you to get a server and upload using FTP. There is no mention or discussion of using remote development environments or version control, although GitHub is mentioned in the final section. It is very useful information, but doesn't go far enough. What to make of the section on other skills? It covers JavaScript, jQuery, Saass, Node and Bootstrap, but only very briefly. I suppose if you are learning HTML/CSS then you probably need to know that these things exist but bringing JavaScript into the picture is probably not a good idea.


This is not a book that you need to read cover to cover. It has examples and exercises that would make it suitable for a course text book. As it doesn't assume that you know anything much about JavaScript, there are lots of topics that aren't covered. Surprisingly, it doesn't go to town on CSS selectors and tricks and techniques in picking out the elements you want to style. Overall, this is a very basic introduction to CSS, but it does cover the key ideas in creating more complex page layouts. My biggest complaint is that if you are even slightly intelligent you can master HTML/CSS with just a few general principles and then you can look up the details on the web. By comparison this is more like an encyclopedia or dictionary approach which explains things in isolation - it is not concept driven, even if it does describe some of the concepts when they crop up as part of something else. Its saving grace is that it does demonstrate how to use the basic tools to create more complex page layouts.

This book with satisfy some readers' need to "have it all" while irritating others by daring to list more or less everything in a standard format. If this is what you want, this is the book for you.



To keep up with our coverage of books for programmers, follow @bookwatchiprog on Twitter or subscribe to I Programmer's Books RSS feed for each day's new addition to Book Watch and for new reviews.


Modern Fortran

Author: Milan Curcic
Publisher: Manning
Date: November 2020
Pages: 416
ISBN: 978-1617295287
Print: 1617295280
Audience: Fortran programmers
Rating: 5
Reviewer: Mike James
Not your parents' Fortran?

JavaScript: The New Toys

Author: T.J. Crowder
Publisher: Wrox
Date: July 2020
Pages: 260
ISBN: 978-1119367956
Print: 1119367956
Kindle: B08C9PH74Z
Audience: Experienced JavaScript developers
Rating: 4.5
Reviewer: Mike James
Great title! Can the book be as good?

More Reviews





Last Updated ( Tuesday, 03 September 2019 )