Web Designer's Reference 416
Web Designers' Reference: An Integrated Approach to Web Design with XHTML and CSS | |
author | Graig Grannell |
pages | 389 |
publisher | Friends of ED |
rating | 8 |
reviewer | jsuda |
ISBN | 1590594304 |
summary | Comprehensive guide to standards-compliant web design |
The reasons are clear and compelling: The World Wide Web Consortium, which promulgates Web design standards, has decreed HTML as obsolete. Newer, more compliant browsers, will in time not support the older tags and code; the new standards facilitate much better use by the disabled of screen readers and non-graphic browsers. Not least, the newer code makes writing and revising code easier and more efficient, as well as more capable.
These are certainly good reasons for Web designers to move to the new code. Nevertheless, surveys show that most Web pages are not compliant and that thousands of designers continue to use deprecated code. I confess that I am one of them -- after a number of years learning and getting used to HTML, the need to learn new and more code is onerous. The inertia of habit is a factor, I'm sure.
For those Web designers like me, Mr. Grannell's book is a welcome addition to the literature because it systematically deals with the topics under discussion. In its coverage of XHTML, CSS, Javascript, and complementary coding (like PHP), it provides a nice framework guiding "old dogs" like me into standards-compliant code. Not only does it provide some historical perspectives on these codes, it compares the old with the new in regard to all of the important elements of Web design.
The author is an experienced Web designer and operates a design and writing agency. He also writes articles for a number of computer magazines.
Grannell's goals are to teach cutting-edge, efficient coding, and how to master standards-compliant XHTML 1.0 and CSS 2.1. There are a dozen chapters. He breaks down the elements of Web design into modular components so that one can focus on each element separately, like page structure, content structure, layout, navigation, text control, user feedback, and multimedia. Relevant technologies are explained in context of producing a typical Website.
If one finally decides to move forward, as many suggest, this is a very good volume by which to get your start. For new designers, this is a nice primer to learn what is expected, in an overall sense, of good, advanced Web design.
This is a well-produced book with clear writing, comprehensive approach, dozens of practical examples, and downloadable files with the code examples used in the book. The author writes in a logical sequence much like an engineer would. It is a heavy textbook-like read, only lightly sprinkled with style and personality. It should appeal primarily to novice designers, but has enough advanced information to satisfy an experienced designer who is looking for that fresh start.
And in fact, the structure of the book facilitates the "fresh-start" idea. It starts with a Web design overview, giving an experienced user's tips on what software to use to write code, what browsers to design for, how to build pages from the very top to the bottom. (XHTML, unlike HTML, requires a preliminary document-type definition (DTD) to validate. Only after the introductory section does the first HTML tag appear.)
Like others writing in this area, Grannell firmly advocates designing for standards compliance, usability, accessibility, and last and least, visual design. Marketing Department people may choke on that priority list, but there is no inherent conflict between function and aesthetics; Grannell simply does not spend a lot of time on the aesthetics.
The middle chapters concentrate on modular construction of pages -- the XHTML introduction, the structural elements like text blocks and images, the logical structure of the links and navigation flow, and finally, the stylizing with CSS. Comparisons between pages styled with HTML vs. CSS compellingly demonstrate the benefits and advantages of CSS. There will be no going back once you've decided to upgrade your technical approach.
Basic CSS concepts are explained and illustrated with code samples and screenshots. Grannell describes how to use CSS for text control, navigation, and layouts. There is a broad section on frames and another on forms and interactive components.
The last chapter covers testing and tweaking including how to create a 7-item browser test suite. Strategies overcoming browser quirks are discussed throughout the book. There is detailed technical information, especially in regard to the XHTML introductory section of the page, which I have not seen elsewhere.
There are three welcome reference appendices at the end covering XHTML tags and attributes, Web color coding, and a very comprehensive entities chart noting currencies, European characters, math symbols and more.
Much of this material is covered elsewhere in the growing set of publications about standards-compliant code. This book has the virtue of having a useful overall perspective on Web design and acts as a framework for new designers and converting designers to renew and upgrade their technical approaches.
You can purchase Web Designers' Reference: An Integrated Approach to Web Design with XHTML and CSS from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.
XHTML is a bad solution (Score:5, Interesting)
I coordially invite someone to give me one reason why XHTML (in its current form, served as text/html or text/xml) is better than HTML 4.0 strict? Is closing my link and meta tags really that life-changing?
W3C trying to make me PC *rolls eyes* (Score:2, Interesting)
No
Jakob Nielson and the gang have pushed us to really boring text based browsing that is a chore to read, and not worth a casual flipping. Why should *I* care if my website is Modem/text based browsing compliant? Sure if I had a research website I can see the point, but my website is a video hosting portal http://videos.streetfire.net/ [streetfire.net] [streetfire.net] so I doubt the 40,000 folks coming to my site every day care about text based browsing or low-bandwidth options, since the end media is video.
FWIW though I chose 3.0 HTML because it's easier to integrate the 13 ASCX objects into my single ASPX page than if I kept styling separate with XHTML.
Now that if course is just me and maybe I'm bothered by people saying my site is obsolete. I admit there are a lot of neat things you can do with XHTML http://www.csszengarden.com/?cssfile=/152/152.css
PS I used the BR tag too, because I still think the P tag is lame.
-Adam HTML guy since 1994.
Another recommendation for beginner's.. (Score:4, Interesting)
Re:How to Suck in 21 days! (Score:5, Interesting)
In my experience (YMMV) it is far, far easier to create an infrastructure capable of doing everything you want and to serve content dynamically within that infrastructure, than it is to edit more than a very few pages by hand. Now there is a good argument for serving static (cached) versions of dynamically created files where this is possible, and a lot of sites do just that.
Re:Web standards!!?? (Score:5, Interesting)
The reason is because the spec is incredibly difficult to implement. Mozilla is damn close to full compliance, but the fact is that the CSS spec suffers from varying levels of vagueness when it comes time to actually sit down and implement a rendering engine.
The real problem is that it's impossible to anticipate all the ways that people might attempt to use CSS, and the gray areas can really only be standardized by browser makers after years of web development by the public at large. CSS 2 is really just starting to hit its stride now that Netscape 4 is effectively dead, but it won't be able to take another quantum leap until IE6 is dead (assuming IE7 makes good on their standards-compliancy promises).
Sadly, web design is one of the most difficult technical disciplines because browsers grew like cancer in the 90s and now the browser makers are all obligated to support all that cruft. IE has some truly mind boggling bugs that will probably have to remain because people depend on that buggy behaviour.
Ah, well, that's job security for me.
Re:How to Suck in 21 days! (Score:5, Interesting)
Now people will argue that a server is not scalable either, but you can always have 5000 servers serving up that same static data. You really can't expect 5000 servers to access a single database and expect the database to survive.
Databases are needed for some webpages, but don't throw them in as a simple shortcut.
Re:What's the need? (Score:5, Interesting)
Since XHTML is just a reformulation of HTML 4.01 into XML, and XHTML 1.1 is just a modularization of XHTML, technically nothhing is wrong with HTML as it exists today. But what about how it exiists tomorrow?
XHTML allows for the easy expansion of the language. Right now, DOCTYPES are the only way to define what version of HTML you're using, which makes it an all or nothing proposition. What if you want to use HTML + SUPERCOOLHTML-Extended? XHTML 1.1 allows you to basically define your own syntax, and more importantly allow the standards body to do so easily).
This way you only have to use as much of the standard as you want to, and if there are two competing standards you can actually choose which one (or ones) to use in a way that the browsers can understand.
Now, i'll grant you that for the typical "my cat fluffy" site, they don't give a rip. HTML 4.01 is just fine. But did you know that HTML 4.01 strict doesn't have font tags? It doesn't have the target attribute on links. It doesn't have a lot of stuff you're used to that are going away.
It's best to get used to XHTML now, HTML won't be improved, but XHTML will.
Re:XHTML is a bad solution (Score:3, Interesting)
However, XHTML (in it's current form) totally breaks namespaces, since the mimetype of the document is text/html and the user agent only expects (or rather, should only expect) to be receiving text/html content (instead of a mish-mash of XML dialects).
I think namespaces are most useful (and powerful) in more controlled environment such as server-side applications (or even Ajax type stuff).
Re:Web standards!!?? (Score:2, Interesting)
These are all great points, and I can't wait for CSS2 to be more fully implemented and for IE6 to be replaced to allow more robust CSS2/XHTML development.
However, as broadband usage propogates, web dev products that can deliver entire web applications to the desktop/browser before the content is even seen (such as Macromedia's Flex or MS's XAML) will eventually become the tool of choice for web development because 1) they ensure "standardized" layout, and 2) the end product is much sleeker and user-friendly. CSS2 standardization in IE and elsewhere will be much less meaningful at that point.
This was probably MS's vision of the future until Firefox forced them back to IE development.
Re:Baby + Bathwater (Score:3, Interesting)
Ummm, you do realize that "not supporting" the older tags just means they'll have no effect, not that their content won't show up, right?
The variable names are shown in italic text and the keywords are in bold. Any text in red indicates a command that requires su.
Oh wait, I guess the bold, italic, and font tags don't work anymore. That will really make the document usable. You know there are literally thousands of examples like that on the internet and in documentation all around the world. Markup tags are vital, in many cases, to understanding the content.
Nope, you don't have clue, do you?
Opinionated much?
It'll work just fine.
Except the tags they use won't be supported and may or may not work (if the reviewer's wishes were to come to pass).
HTML + CSS gives them plenty of ways to do that, from the vapidly simple to the hideously complex.
Sorry without a wysiwyg editor CSS is just not as simple, especially for a novice as plain olde fashioned HTML.
Or perhaps you wish there was no choice, so those (like you perhaps?) who don't wish to put a little effort into learning their craft won't look incompetent next to those who do?
If you'd bothered to finish reading my post instead of running off at the mouth like a lackwit you would have noticed that I appreciate having both CSS and XHTML, both of which I use regularly. Not supporting plain HTML is not giving user's choice, it is railroading them into using newer formats. Choice is supporting both and luckily I don't think any browser project would be foolish enough to stop supporting the basics of HTML anytime in the next decade.
I can't find ONE relevant comment! (Score:2, Interesting)
HTML4 + CSS (Score:3, Interesting)
Re:Gilding the lilly (Score:2, Interesting)
A good analogy is mathml. For decades most scientists use latex to type the text, then somebody came up with the idea that the formulae must be searchable and presented in a form that computer must understand. Why? What useful purpose would it serve? How I as a user can benefit from it? How many readers of the online journals are going to search for a particular fragment of the formula in the online paper?