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