I can rack my brain all I want, but I think this can really be solved only using table behaviour, i.e. using <table>
s (if you need to be IE6 and IE7 compatible) or display: table / table-row / table-cell
(which is effectively the same thing but won’t embarrass you in front of your peers because tables are evil. ;).
I’d go for a table.
Feel free to prove me wrong and post a sane CSS solution, I’d be delighted!