come faccio a centrare un div contenitore nel body della pagina, ma poi lasciare l'allineamento all'interno del div contenitore a sinistra?

Ho provato ad assegnare al body "text-align:center", questo allinea tutto testo e controlli al centro nel body(come volevo), ma anche il contenuto del div contenitore viene messo al centro(mentre io vorrei lasciarlo a sinistra, o meglio senza un allineamento specifico).
Devo forse ridefinire l'allineamento all'interno del div con text-align:left?

esiste un selettore che applicata una regola e non la propaghi a cascata agli elementi figli, ma rimaga confinata solo all'elemento corrente?

inoltre è corretto usare "text-align:center" per allianre non solo il testo ma anche altri oggetti html?