Con quel codice HTML, dovresti usare questo CSS:
codice:
div {
  width: 100%;
  background-color: white;  /* per marcare la differenza */
}
h3 {
  background-color: navy;
  width: auto;               /* toglie eventuali attributi globali;
  max-width: 10em;      /* per scrupolo - non dovrebbe servire (non funziona in IE) */
}