Making Communications Buzz

Thursday, June 15, 2006

Web Standards Solutions Are Not Practical or Helpful

Warning: This is a rant. But if that's not what blog is good for, then...

Dan Cederholm and Jeffrey Zeldman are two of the best in the web development business. Their websites are beacons of cool, standards-based design.* Their books, like Cederholm's Web Standards Solutions: The Markup and Style Handbook and Zeldman's Designing with Web Standards, are best-sellers.

But, when I sat down this morning to start building a new website for a client, I picked up each one and, after a few minutes, put it back on the shelf in frustration.

I want to use a basic, two-column XHTML layout. But it's not in either of these books.

In Web design, XHTML is the way to go, each of these authors proclaim. No question about it. XHTML means designing without the old, outmoded use of tables in a layout. It separates formatting from content. Better accessibility. Loads faster. Makes formatting much easier to modify. Displays better in mobile devices.

Great, right? Books with titles like the above should come with code for a complete two-column layout, and they should explain how it all works.

Unfortunately, what these books come with amounts to a long discussion of how parts of some kinds of two-column layouts work, sort of, except when they don't.

Why? Because there is still (to my knowledge - and definitely not in these books) no standard XHTML two-column layout that works well in most popular browsers.

There are two-column layouts that work well for masters like Cederholm and Zeldman, and their books attempt to explain why these two-column layouts work well. But, as a less skilled developer like me (no slouch, mind you!) finds as soon as he tries to adapt one of these two-column layouts to a particular design - by including (god forbid) a vertical border on one of the columns, say - the layout goes south. In one browser or another, things on the page don't line up. Gaps appear. Etc.

A vertical border is not that much to ask, but using one between two columns calls for coding "hacks" (ad hoc code to make the layout look the same in popular browsers like Internet Explorer and Netscape).

And, if you add something else to the layout after you get your vertical border problems straightened out, well, that could require even more hacks. Meanwhile, your billable hours are wasting away....

Are Cederholm and Zeldman to blame for this state of affairs. Certainly not.

The real problem lies in the fact that browser makers like Microsoft and Mozilla won't agree about how to handle Web coding standards. This rant should really be directed at them.

Cederholm and Zeldman are stars because they have figured out how to use XHTML and make their sites look great in most browsers. I wish they could do more to make my XHTML sites do the same. A tall order, I admit.

*The look and feel of The McBuzzBlog draws heavily from one of several Blogger templates Dan created.

2 Comments:

  • Dan Cederholm's Faux Columns at A List Apart tells how to create a simple two-column layout in CSS.

    http://www.alistapart.com/articles/fauxcolumns

    (We don't create layouts in HTML or XHTML, we use CSS to create layouts.)

    The problems Dan and I cite (float bugs and such) are frustrating at first, I agree. Fortunately most of these bugs are well known and the web design community has created numerous workarounds you can study and understand ... or just copy and paste.

    http://css-discuss.incutio.com/?page=FrontPage

    Most of these bugs are in IE, and most of them have been eradicated from the upcoming IE7. Yay!

    Hope this helps. - JZ

    By Anonymous Anonymous, at 11:03 AM  

  • Many thanks for your comments, JZ!

    I have studied some of the workarounds, several of which appear in your book and Dan's.

    Another good source is sitepoint.com. Moderator "Paul O'B" has done great work there.

    But I have had similar frustration with the SitePoint books on CSS. Although they are quite good, they are still filled with workarounds / hacks and there are some formatting recipes included in the books that don't display consistently in popular browsers.

    My frustration really stems from the fact that there are so many workarounds and that they require so much study.

    I should add that I have invested many hours of study, and see it as part of my job. But does it have to be? I want to help customers communicate. Learning CSS workarounds is not trivial, but I wish it were!

    My customers experience similar frustration when they try to edit a site using Macromedia Contribute.

    Given the central role Web sites play in many businesses' communications strategies, one would think (or hope) it might be easy to make updates and basic modifications to a Web site without a knowledge of CSS. But even using Contribute well requires a kind of CSS know-how. Or it requires someone with that know how to go in and clean up ad hoc styles on a regular basis.

    I know business people don't (usually) expect to be able to create their own (high-quality) print materials or TV ad campaigns. But this is different.

    Web-based communications should be easy to use and look good.

    My customers ought to be able to use a WordPress-style Web site to connect with clients and prospective clients without having to learn HTML or CSS. I feel an urgent need to provide such a solution, and I'm working on creating one. (Would love any suggestions, of course.)

    Similarly, browser makers and Web developers should, I think, feel the same urgency to resolve discrepancies and make it easier to create CSS layouts that work.

    As you point out, IE7 (finally) makes progress in this regard.

    I admit that some of what I'm doing here is venting about matters that pros like you and Dan Cederholm have been grappling with - and working to correct - for a long time. "Welcome to 1999, Mark..."

    At any rate, I'm honored to get your feedback. Thanks big time for visiting McBuzz Communications and The McBuzzBlog!

    By Blogger Mark McLaren, at 1:17 PM  

Post a Comment

< Back to McBuzzBlog Home