Aqui te paso la sintaxis para que pongas un div autoajustable.
En tu
CSS creas un identificador como la siguiente o igual la etiqueta div si quieres que todos los divs sean autoajustables
<!--Identificador que solo aplicara al div que tiene el nombre en el id = "contenedor"-->
#contenedor{border: 1px solid; width:400px; margin: auto;}
<!--Poniendo el tag div afecta a todos los divs en general el autoajustarse, dependiendo lo que quieres realizar usas la opcion que mas te convenga-->
div{border: 1px solid; width:400px; margin: auto;}
Lo importante para manipular un div que sea autoajustable es usar la propiedad
'margin' y No asignarle el 'height'. La propiedad margin tiene cuatro parametros que recibe ejemplo. {margin: 2px auto auto 10px} (el 2px es el margen superior, el primer auto es el margen derecho, el segundo auto es el margen inferior y el 10px es el margen izquierdo) Va en sentido del reloj o igual lo puedes dejar como esta en el ejemplo.
Espero que te sea de utilidad