I'm not trying to put fuel on the table/div debate, for this project I've already decided that I want to use divs for everything that's not tabular, so far it is working out well.

I have one spot where I need to display name value pairs, so on the left I display the name (label) and on the right I display a value. It's not necessarily tabular data or at least how I think of tabular data, because I imagine tabular data where the labels are displayed horizontally at the top, and the values are below in rows.

But I've tried to display this in divs and am having some issue. I have 2 divs with float:left. for each label i have a div inside the left most parent div. for each value i ave a corresponding div inside the rightmost parent div. This would normally be ok, but if the value div is empty the div shrinks and the label divs and value divs stop aligning to each other vertically. Same if I use spans, or even ul/li (list-style-type:none) elements. The only one that seems to work easily is a table. I don't want to explicitely set hights on the divs because I think that's a cop-out, and the required hight could change if I change the font. Given that I'm trying to go with the "divs for non tabular data" approach, would I be breaking my own rules by using a table?