When putting a form on a webpage, I prefer the labels and edit boxes for all fields to be aligned, e.g. like this:



This is easily done by putting it all in a table. What is the best way to do this properly with CSS?

Note: I don't want to define fixed widths for certain columns or whatever. The width for the labels should just be automatically as much as necessary to fit the widest label.

...