Sun, 31/08/2008 - 20:41 — horuskol
It's been a web design mantra for years now - tables are for data, not for structure.
The simple reason is that it is easier to apply CSS positioning to elements outside of tables - whereas, moving a table cell has compounding knock-on effects - column and row issues which need to be cleaned up before the table will be valid and display properly again.
Another reason is that tables used for structure do not make use of a lot of the other related elements which help browsers to render the table (colgroups, for example), making them pretty slow to display on a page.
Sun, 31/08/2008 - 20:41 — horuskol
I came up with this solution about a month ago, and have since been implementing it into new site designs.
To tie up the extra information related to each input, I'm going to recruit the oft-overlooked <dl></dl> element.