Domanda semplice

Ho una lista disposta (con float:left) su una riga.
Ha N elementi (in questo caso N=5) e la loro larghezza è proporzionale alla larghezza disponibile (100% diviso 5).
Le immagini hanno tutte proporzioni diverse.

Come faccio a farle proporzionare automaticamente, secondo proporzioni prefissate?

Ho provato con
codice:
ul#gallery {
  height: 130px;
  width: 100%;
}

ul#gallery li {
  background-color: #000;
  float: left;
  width: 19%;  /* 100% diviso 5 (circa) */
}

ul#gallery img {
  height: 100%;
}
Non funziona però... almeno, funziona solo se l'altezza è maggiore della larghezza
le immagini devono adattarsi alla larghezza o all'altezza del[*] che le contengono, senza perdere però le proporzioni.

Sapete aiutarmi?