Это кажется тривиальным, но после всех исследований и написания кода я не могу заставить его работать. Условия такие:
- Размер окна браузера неизвестен. Поэтому, пожалуйста, не предлагайте решения, связанные с абсолютными размерами пикселей.
- Исходные размеры изображения неизвестны, и может или не может уже соответствовать окну браузера.
- Изображение центрируется по вертикали и горизонтали.
- Пропорции изображения должны быть сохранены.
- Изображение должно отображаться в окне целиком (без обрезки).
- Я не хочу, чтобы появлялись полосы прокрутки (и они не должны появляться, если изображение подходит).
- Размер изображения автоматически изменяется при изменении размеров окна, чтобы занять все доступное пространство, не превышая исходного размера.
В основном я хочу вот что:
.fit {
max-width: 99%;
max-height: 99%;
}
<img class="fit" src="pic.png">
Проблема с приведенным выше кодом заключается в том, что он не работает: изображение занимает все необходимое пространство по вертикали, добавляя вертикальную полосу прокрутки.
В моем распоряжении есть PHP, Javascript, JQuery, но я бы убил ради решения только для CSS. Мне все равно, если это не работает в IE.