Instead of setting the width for each individual form element, why not simply let them scale to a grid automatically? The form below does exactly that. A fixed table layout creates a solid grid to work with. This grid is then used with varying colspan values, and the 100% width for input fields does the rest.
|House number:||Postal code:|
|Phone number:||call me now|
Granted, using tables for forms may be questionable, but you're entering a world of pain if you don't do it for complex form layouts. The CSS file is over here.