Title: Web Design in a Nutshell, Third Edition Subtitle: A Desktop Quick Reference Publisher: O'Reilly Author: Jennifer Niederst Robbins Edition: Third, February 2006 Series: In a Nutshell ISBN: 0-596-00987-9 Pages: 826 Cost: $34.99 US, $48.99 CA, £24.99 UK
Smiley Rating: Very good :) :) :) :) of 5
This book is a very good O'Reilly Nutshell book. More specifically, it's:
If that's what you want, go for it.
Oh, another thing, the book has been completely rewritten since the second edition to support using (X)HTML markup to indicate the structure of a document and CSS to specify the presentation.
Want more detail? See my somewhat longer review.
Or you may wish to take a look at the table of contents and sample chapter available here.George Woolley of Camelot.pm and Oakland.pm
OK, here are some links you might enjoy:
As of 2006-03-20, I don't see this book on Safari Tech Books Online. :(
There's more information about the book available via the O'Reilly catalog entry. In particular, you may wish to look through the table of contents and read the sample chapter (16. Cascading Style Sheets Fundamentals).
If you feel like learning more about the author, you could check out:
Based on the title, I suppose someone might expect this book to focus on the principles of web design. I was expecting the focus to be, instead, on frontend web design technologies. However, I didn't expect the book to include the details of web graphic creation and manipulation partly because that would make the book way too long.
The following is from my earlier review of "Linux in a Nutshell":
O'Reilly Nutshell books
- document the details of a topic or technology area
- are comprehensive but concise
- are not tutorials
- are useful for getting a quick answer
Based on the subtitle, I certainly expected this book to be useful as a reference. So I expected:
I also expected this book to be larger than a pocket reference and smaller than an unabridged dictionary. ;)
Yep. This book is, indeed, focused on the technologies a frontend web designer who is not a graphic designer needs to understand. It's a very good representative of the Nutshell Series, that is, it does provide the details on its chosen topic, it is comprehensive but concise, and it is not a tutorial. This book is suitable in size, format and content for a desktop reference on its chosen topic; it does have a useful index, and material is formatted for easy reference where appropriate.
If you are looking for a book that focuses on web design principles, this is not the book you seek. That being said, this book certainly does give a fair amount of guidance on good web design.
I'm an amateur web designer. I've put together and maintained a number of sites.
I tend to keep things relatively simple. I don't use frames, XHTML or XML in my pages, up until now anyway.
Mostly I develop and maintain websites using the Linux OS.
I don't need to work now, but when I did work I was a software developer. I've made significant use of more than 20 programming languages.
On the client side, I've used JavaScript some but not much.
On the server side, I've used Perl extensively for CGIs. Recently, I've been using PHP quite a bit.
I own quite a few O'Reilly books. I have a high regard for O'Reilly.
I've reviewed a lot of O'Reilly books.
I own two other books by the author: the second edition of "Learning Web Design" (which I reviewed in 2003) and the first edition of the book I'm reviewing here.
What you get is a sizeable (over 800 pages if you include the preface, appendixes, glossary, index, etc.) reference for frontend web design technologies, but without all the details for graphic design. The book is also suitable for reviewing areas that you already know.
Below I'll briefly describe the main parts of the book.
Part I lays the foundation for the rest of the book. Some of the questions you'll find answers to are:
Part II addresses structuring a document using markup. Structuring a document includes marking such things as: headers, lists, paragraphs; it does not include specifying how these things are to be presented, e.g., what fonts are to be used, e.g., what the top and bottom margins are for paragraphs.
It addresses such questions as:
Part III is about how to control presentation using Cascading Style Sheets (CSS).
Some of the questions addressed are:
Part IV is about using client side scripting to produce interactivity on the web page. It introduces JavaScript and tells you how to use it to manipulate the DOM (document object model) to change the document dynamically.
This part also gets you started with AJAX which allows you to easily interact with server side scripts.
Part V provides important information on web graphics formats. There are separate chapters on GIFs, animated GIFs, JPEGs and PNGs.
Part VI is about how to deal with media other than text and images on a monitor screen. There are separate chapters on audio, video, Flash and printing.
The appendixes and their formats are listed in the table below.
| Appendix Name | has an entry for each |
format of an entry |
|---|---|---|
| A. HTML Elements and Attributes |
HTML element (e.g. p) |
|
| B. CSS 2.1 Properties | CSS property (e.g. color) |
|
| C. Character Entities | character entity (e.g. for ~) |
|
| D. Specifying Colors | (various formats) | |
| E. Microformats: Extending (X)HTML |
(running text) |
Following the Appendixes are a Glossary that defines around 120 key web design terms and a useful index.
As I see it, the purpose of this book is to be a reference to frontend web design technologies, especially (X)HTML and CSS, for frontend web designers who are committed to making a clean distinction between structure and presentation. However, the book is not intended to be a reference for the details of web graphic design.
The book is true to this purpose.
The organization of the book is superb. The grouping of chapters into parts is well done. The chapters are individually coherent and of reasonable size; the chapters range in size from 8 pages to 30 pages.
The first 3 appendixes are highly formatted and the information in them is easily accessible. The formats used in the first 2 appendixes for HTML elements and CSS properties are also used in the body of the book in the parts that cover (X)HTML (Part II: The Structural Layer, ch. 7-15) and CSS (Part III: The Presentation Layer, ch. 16-25).
The formatted entries for HTML elements and CSS properties are very clear, and the author wisely uses them in both the body of the book and in the appendixes. For example, the formatted entry for p (paragraph) exists in both Chapter 10 "Text Elements" and Appendix A "HTML Elements and Attributes". In the chapter, along with the formatted entry for p there is an example of paragraph markup and some additional discussion of its usage. I believe this redundant use of the formatted entries is warranted because:
Given the purpose of the book, the most important things to cover are (X)HTML and CSS. The book covers these thoroughly. The book also covers a number of other relevant topics of importance to a frontend web designer in less detail.
The book wisely does not try to cover everything involved in web design. For example, there isn't much about web programming in this book. However, it is important for a frontend web designer to have some knowledge in this area. The book includes:
The book would become unwieldy if one incorporated the details for web programming (even if only for JavaScript) and for web graphics.
The book has been completely rewritten to make a clean separation between structure and presentation, using (X)HTML for structure and CSS for presentation.
While this is not a book on web design principles, it does contain a good deal of guidance for web designers.
More specifically, you are encouraged to:
There are also many much more specific pointers. For example, in Chapter 10 "Text Elements", there's a table that gives a CSS property alternative for each of various HTML presentational elements. One entry in this table suggests that in place of the HTML element b you use the CSS font property font-weight: bold
The author is an expert frontend web designer.
There are several chapters written by others, who are experts in the particular area of the chapter they write:
The inclusion of these chapters enhances the book.
The book doesn't explicitly say who it's intended for.
I'd like to see an explicit clear statement of who the book is for in the Preface.
The paragraph element in HTML does not map well onto English language text. In my markup and CSS, I have to do a fair amount to get around this. The author doesn't address this problem or even point it out.
Since I use mostly Linux for creating and maintaining web sites, I'd like more mention of it when OS is relevant.
I'd like to see the format for HTML elements include what an element can contain. This seems like essential information to me.
This book would be ideal for someone with all the following characteristics:
The book would not be good for any of the following:
If you've actually read the review above, have some experience using (X)HTML and CSS, and need a reference for frontend web design (especially (X)HTML and CSS), I recommend this book to you.
Complete Draft Uploaded to the Web: 2006-03-25
Draft Status Removed: 2006-04-04