meyerweb.com

Skip to: site navigation/presentation
Skip to: Thoughts From Eric

Archive: 6 September 2004

A Labor Day Weekend of Love

This past weekend, I was honored to be a groomsman in the wedding of Jim and Genevieve.  I suspect that I was chosen in part because my height came reasonably close to matching that of the bridesmaid with whom I was paired, but I can accept that.  It was, without doubt, one of the most interesting wedding events I’ve ever experienced.

Not because of the actual wedding itself—no, that was a fairly normal affair, complete with a quick relocation indoors due to a thunderstorm that arrived precisely on time.  It was more punctual than some of the guests, actually.  Similarly, there was the expected folderol with the photographer, who was stressed out and stressed out everyone else in her attempts to get The Absolute Best Bridal Party Pictures Ever.  Nothing unusual there.  We even had the requisite confusion about who was escorting whom, and in what order, to their seats at the very beginning of the processional, despite having rehearsed it twice the night before.

Things actually got interesting a few weeks back, when the bachelor party started with an afternoon of paintball.  That was before the more normal dinner and then visits to a series of, er, gentlemen’s clubs.  (Sadly, I missed that last part since we only had a babysitter until eleven, and Kat was at the bachelorette party being held the same night.  We drew straws, and I was the one who got to come back home early.)  But paintball?  Who starts off a bachelor party with a bunch of guys running around shooting paint pellets at each other?  The last of my bruises finally vanished a few days ago, in fact.  I mean, it was fun and all, modulo the stinging impacts and aches of course.  It just seemed very, very odd.  Especially that we didn’t all gang up on the groom and paste him head to toe in paint.  And bruises.

Then, the night before the wedding, things got more interesting.  At the rehearsal dinner, Jim presented us with our groomsman gifts, something he’d been saying for a couple of weeks he was really stoked about, all while rightly refusing to say what he’d gotten.  All of them were obviously the same thing, and felt through the wrapping paper like a set of Craftsman wrenches or something similar.  Turns out he got us all Victor II paintball guns (excuse me, “markers”).  Seriously.

I mean, I’ve heard of shotgun weddings before, but this is something else altogether.

Apparently, there will be more paintball in our futures.  Kat was really excited, announcing in front of everyone that she hoped there’d be monthly paintball, because she wants me out of the house.  Really, that’s how she phrased it.  I felt so very loved.

Then there was the night after the wedding.  After a well-attended and very tasty barbeque on the shore of Lake Erie, a bunch of us deliberately went to play Whirlyball.  “What’s that?” you ask.  It’s sort of like lacrosse, except the competitors drive around the playing arena in bumper cars.  Seriously.  Go check out the site if you don’t believe me.  I can wait.

Now for the part many of you may not believe: Whirlyball is actually a lot of fun.  Besides the sheer joy of driving around bumper cars for fifteen minutes straight, you’re involved in a game that actually lends itself to some sophisticated strategy and tactics, if you pay attention and have teammates who do the same.  There’s just one thing I really want to know.  Why Whirlyball?  There’s really no whirling in the game unless you get confused by the car’s steering mechanism and start driving in a circle… or, as happened to one player, get the steering mechanism slammed into your groin, causing him to slump over and drive in a small circle for a while, feebly waving his scoop in the air whenever the referee asked if he was okay.  I guess that’s why they tell you to buckle the seat belt low and tight across your lap.

Frankly, more weddings should be as fun as theirs.

To Be Tabled

There’s a faint tendency in my work to operate in threes.  I wrote a theory book, a reference book, and a practical book, for example, even referring them to the three legs of a stool.  (Okay, so I’ve written more since then.)  Hopefully, this will serve as the third of three posts on tables and layout, and not the third of more than three.  I have other things I want to write about that have been delayed, and honestly, I grow weary of tromping the same ground again and again.

Brad Bice pointed out that my example markup could be noticeably reduced in size by doing the following:

div#layout {display: table;}
div#layout > div {display: table-row;}
div#layout > div > div {display: table-cell;}

<div id="layout">
 <div>
  <div>...content...</div>
  <div>...content...</div>
  <div>...content...</div>
 </div>
 <div>
  <div>...content...</div>
  <div>...content...</div>
  <div>...content...</div>
 </div>
 <div>
  <div>...content...</div>
  <div>...content...</div>
  <div>...content...</div>
 </div>
</div>

That brings the CSS approach roughly into line with the weight of the table-based approach, which is good.  That still leaves us with the larger problem that Explorer still doesn’t support the application of table-related display values to non-table markup, so the layout will completely fall apart in IE/Win, which is bad.  I suppose you could script your way around the problem, a la IE7.  I wonder how you’d account for the lack of things like rowspan and colspan, though.  CSS doesn’t offer anything comparable.

There were a few responses to the effect of “what Eric fails to say is that table elements already have a predefined meaning”.  True, I failed to say that, mostly because I didn’t think it was important to bring up.  I think it’s fairly safe to assume that if you’re worrying about any of this stuff, then you’re going to try to use semantically appropriate elements when you can.  However, if you accept that there are times when a grid layout system is needed, then you have to accept that need will override any concerns about defined element meanings.  In other words, the defined semantics of table markup are important, but they aren’t important enough to block the use of table markup when it’s needed for layout purposes.

Some would say that if you can’t accomplish your design without violating markup semantics, then you should create a different design, one that doesn’t require the use of table markup.  That’s one of those “you can choose any color you want as long as it’s black” arguments that just make me sadly shake my head.  There’s no argument that will change that kind of thinking: it rejects reality in favor of internal consistency.  If that works for you, great, but I can’t operate that way.  We’ll just have to agree to disagree.

Then there were the responses that ran something like “okay, so tables are necessary for a few things, but for almost every type of Web design you don’t need to use tables”.  Yes.  I said that.  I said it several times, in fact, in different ways.  Maybe that was a mistake.  So, if I may, allow me to summarize the points I’ve apparently been obscuring over the past few days.

  • In the vast majority of Web design cases, you can accomplish your layout without the use of table markup, and you can do so in today’s browsers.  This applies even to most layouts that appear to be grid-based at first glance.
  • There are a few cases, very rare ones, that require grid-driven layout where all the grid pieces line up both horizontally and vertically, both side to side and top and bottom, and the contents of the pieces have dimensions that cannot be predicted in advance.
  • At the current stage of the Web’s evolution, such layouts require table markup if you want the design to work as intended in Explorer as well as more recent browsers.
  • The table markup used in such designs can and should be very light-weight, and use CSS for presenting all of the visible content within the table.  The table itself can also be styled using CSS for the most part, although row- and column-spanning still has to be done at the markup level.
  • From this point on, anyone who uses these posts to claim that I’m saying tables should always be used for layout is either not paying any attention, has an agenda to promote, or both.  Probably both.

Fin.  I hope.

September 2004
SMTWTFS
August October
 1234
567891011
12131415161718
19202122232425
2627282930  

Archives

Feeds

Extras