puoi usare anche la prima ma va perfezionata

body {
text-align: left !important;
text-align /**/: center;
}
#container {
text-align: left;
margin: 0 auto;
}

quel furbacchione di IE5 non vede il margin auto, ma usando il text-align ti permette di centrare anche elementi block level... quindi per gli altri li allinei con il margin, per IE 5 usi sul genitore (in questo caso il body) il text-align e ovviamente poi lo resetti a sinistra

ciauz