#javascript #html #jquery #css #aspnet_mvc
Пользователь при создании новости на сайте должен загрузить заставку(картинку) для этой новости. Новость создана, проверена модератором, уходит в новостную ленту. Какие есть способы сжать картинки, когда они рендерятся на страницу, чтобы уменьшить количество загружаемых данных? Платформа Asp.Net MVC 4, есть несколько вариантов, по крайней мере известных мне: Можно сохранять картинку на сервере и далее сжимать ее сторонней программой без потери качества. Вариант очень плохой. Сжимать картинку сразу при ее добавлении на сервер и далее выплевывать ее уже сжатой, но качество картинки будет страдать.Вариант получше, но тоже не торт. Через HttpHandler (уже написал теперь пробую), который ловит request и возвращает сжатую картинку, но и тут возникает проблема, когда я начинаю обрабатывать эту картинку я указываю у нее размер и степень сжатия(или качества). Если размер не указывать, то объем картинки, конечно уменьшается, но не на столько, насколько с размером. Макет страницы резиновый, по-этому точный размер картинки я задать не могу, для каких то частей сайта, да он фиксированный например для аватара пользователя, но для большинства нет. Вот тут и возникает вопрос можно ли как то это сделать динамически, под разный размер экрана пользователя? Чтобы в мой request еще приходили примерные размеры картинки, для той или иной области. Прим. контейнер для картинки: figure { width: 100%; height: 400px; position: relative; } figure img { width: 100%; height: 100%; display: block; } Нужно вычислить размеры W и H контейнера "figure", его CSS
Ответы
Ответ 1
Гораздо лучше для этой цели подойдёт использование атрибута srcset или элемента
Комментариев нет:
Отправить комментарий