So with some gracious help from Jason Lefkowitz, I’ve fixed the IE 6 problem noted below.
Just so you know what it was in case you don’t think to yourself, “Self, instead of spending two hours on this, I’m going to spend 15 minutes putting in a two-column table and be done with it,” I outline the problem and solution here.
The problem is if you have a div floated over another, and only in IE 6. If the div that is floated over has a background-color, that background color will cover everything in that non-floated div until IE is forced to redraw the screen (such as by covering it with another window or selecting the invisible text).
The solution is to take the background-color out.
Jason points out that this is Bill Gates’s fault, not WaSP or Zeldman’s. Technically, no, but here’s a case where I was on several other deadlines, and this weird issue comes up and sucks up two hours of my day as I debug it. Now, debugging is part of life, but a quick solution would have been to take the two columns of layout and plunk them in two table cells. That would have taken me 15 minutes to restructure the page and test in the applicable browsers.
Given the structure of the code it actually would have been the same on assistive devices, though a cell phone might have had more problems with it. Still, if we get sufficient cell phone traffic, I’ll just put up a WML version of the relevant information. So far, nary a one has been identified.
In this case, I didn’t even care what the thing looked like in NS 4, I just wanted it to work in IE 6 and Mozilla. That’s it, really, all I cared about. But doing it the “right” way cost me time I didn’t have.
The reason I spent it? Because that was how the code had been conceived originally, and I wanted to stay true to that. Also Jason helped, which basically goaded me into not just giving up on it. Had he not, there’d be one more table in existence today.
So — my problem is not with “Standards” per se, but rather unreasonable application of them when the tradeoffs just don’t work in their favor. Don’t expect to see me often going to these lengths. When in doubt, I will go with what works for the vast majority of my audience and keep my projects from going over budget.
When the browser market is such that doing away with tables for layout is more efficient, I will happily do so. It’s just not there yet, pace Zeldman.