Like any holy war, it’s hard to say for sure who might have won what, and there will be plenty of people who will never admit that the war is over, but my feeling is that, for now, my guys—the CSS2 zealots—have lost.
I don’t think there’s any question but what we won the first battle, over whether toolmakers should make it possible to use CSS2/XHTML (though there is still plenty of mop-up work to be done, convincing Ev. to do real paragraphs and <br /> among other things).
Once the war turned from may we to should you—should everyone be doing tableless layouts, should every weblog, should Scripting News—well, I think we’ve lost. We’ve demonstrated that you can do a weblog with CSS2 layout that looks fairly similar in all the latest browsers, and isn’t completely unreadable in older browsers, if you choose to use a layout that doesn’t require precise placement, or if you are willing to use hacks and hide your CSS from browsers that you know will mess it up. That’s nice, for fulltime working professional web designers, and even for some interested amateurs. For Jane Q. Blogger, working two jobs and only blogging after the kids are finally asleep, it seems a bit much. If we have to convince people that it’s a good thing to not do layouts that look the way they want them to, because to look that way they’ll need two stylesheets and four rules for every width they specify, we’ve lost.
We’re right: layout with stylesheets is cleaner, quicker, easier to maintain, you name it. It just isn’t practical in the real world of old browsers and people who want the layouts they want, not the layouts that CSS and its broken implementations are willing to allow. Sadly, even the vaunted NYPL Style Guide agrees:
Alas, for the foreseeable future, most Library projects will employ a combination of CSS and XHTML tables, in order to accommodate non-CSS-compliant browsers such as Netscape Navigator 4 and Microsoft Internet Explorer 4.
Ah, well. Maybe we’ll get them next time, when everyone has upgraded to the version 7 browsers.