en realidad no hace falta el 0 en el margin >
margin:0 auto; basta con colocar
margin:auto;
y pues como dijo nuestro amigo en pasicion relativa
Código HTML:
div1{margin:auto;}
y si usas posicion absoluta
Código HTML:
div1{position:absolute; left:50%; margin-left:-150px;}
esto considerando que -150px representa la mitad del ancho de tu div