Buenas, lamento entrometerme en el tema pero veo que aun no se ha encontrado la solucion :-p
Una cosa muy simple es darle un width con % pero que no sea 100, como dijeron antes, y luego, agregarle un margen a la izquierda que sea la mitad de lo que le falta a ese width para llegar a 100, por ejemplo:
Código HTML:
<html>
<head>
<style type="text/css">
#div {
width:90%;
margin-left:5%;
}
</style>
</head>
<body>
<div id="div">Esto esta centrado</div>
</body>
</html>
Asi queda centrado en forma horizontal y si no funciona, como ultimo recurso puedes usar <center> y </center> Aunque no lo recomiendo