Sembra banale ma dopo tutta la ricerca e la codifica non riesco a farlo funzionare. Le condizioni sono:
- La dimensione della finestra del browser è sconosciuta. Quindi, per favore, non proporre una soluzione che coinvolga dimensioni pixel assolute.
- Le dimensioni originali dell'immagine sono sconosciute e possono o non possono già adattarsi alla finestra del browser.
- L'immagine è centrata verticalmente e orizzontalmente.
- Le proporzioni dell'immagine devono essere conservate.
- L'immagine deve essere visualizzata nella sua interezza nella finestra (nessun ritaglio).
- Non desidero che appaiano le barre di scorrimento (e non dovrebbero se l'immagine si adatta.)
- L'immagine si ridimensiona automaticamente quando cambiano le dimensioni della finestra, per occupare tutto lo spazio disponibile senza essere più grande della sua dimensione originale.
Fondamentalmente quello che voglio è questo:
.fit {
max-width: 99%;
max-height: 99%;
}
<img class="fit" src="pic.png">
Il problema con il codice sopra è che non funziona: l'immagine occupa tutto lo spazio verticale di cui ha bisogno aggiungendo una barra di scorrimento verticale.
A mia disposizione c'è PHP, Javascript, JQuery ma ucciderei per una soluzione solo CSS. Non mi interessa se non funziona in IE.