beh ti dico come faccio io, anche se forse non è la soluzione migliore, mi son trovato bene è ho sempre fatto così:
Uso un div per ogni riga (formata da label + campo di input) cui assegno determinati margini per posizionarlo.
poi flotto la label a sinistra e di seguito il campo si pone alla sua destra. fissando una larghezza alla label i campi saranno tutti allineati verticalmente!