se gli assegni una altezza predefinita, non puoi sperare che si modifichi in base al contenuto.

Al limite puoi utilizzare min-height, che gli dice che alto meno di cosi non deve essere. Però non gli imponi una altezza massima.

Cerca online le implementazioni di min-height, perche non su tutti i browser è supportato correttamente e a livello di css per IE c'è da applicare un piccolo hack