IMG width: размер изображения css
Атрибут width HTML указывает исходную ширину изображения в пикселях.
Пример кода
<img src="https://www.internet-technologies.ru/wp-content/uploads/flamingo.jpg">
- Управление шириной изображения
- Управление размером картинки в CSS
- Адаптивная ширина изображения
- Информирование браузера — основная цель атрибута width
- Должен ли я использовать width?
- Поддержка браузерами
До появления CSS ширина изображения задавалась с помощью атрибута width. Такой метод на сегодняшний день является устаревшим. Но при отсутствии любых других правил CSS, определяющих ширину изображения, он все равно будет работать в большинстве браузеров. Тем не менее, это противоречит спецификации HTML5:
<!-- Это работает, но Вам не следует так делать.--> <img src="https://www.internet-technologies.ru/wp-content/uploads/very-large-flamingo.jpg">
Примечание: Оригинальное изображение гораздо шире, чем 500 пикселей.
Для управления HTML max width изображения следует использовать CSS:
#fixed-width-flamingo { width: 500px; } <img src="https://www.internet-technologies.ru/wp-content/uploads/flamingo.jpg">
Обычно не требуется задавать конкретную ширину изображения. Если указать фиксированную ширину, она может оказаться слишком маленькой для экранов устройств некоторых пользователей и слишком большой для других. Лучше всего поместить изображение внутрь адаптивного контейнера (определяемого в процентах), а затем задать для него заполнение по всей ширине:
#responsive-image { width: 100%; height: auto; } <img src="https://www.internet-technologies.ru/wp-content/uploads/very-large-flamingo.jpg">
Если нужно предоставить для всех пользователей полностью адаптивный дизайн, примените атрибут srcset, чтобы указать дополнительные размеры изображения.
Или элемент <picture>, чтобы задать альтернативный дизайн изображения.В соответствии со спецификацией, основная цель тега width в HTML- сообщить браузеру фактическую, исходную ширину (в пикселях) изображения. Он должен применяться для описания исходного файла, а не того, как нужно отображать его на экране. Эта информация может быть использована браузером для оптимизации рендеринга. Тогда именно CSS, а не элемент width будет определять фактический размер выводимого изображения:
#responsive-flamingo { width: 100%; height: auto; } <img src="https://www.internet-technologies.ru/wp-content/uploads/very-large-flamingo.jpg">
Примечание: На большинстве экранов изображение будет выходить за пределы контейнера, если оно имеет ширину более 1280 пикселей.
Это поможет браузерам быстрее и более аккуратно отображать страницы, особенно в сочетании с элементом height. Рассмотрим приведенный выше пример.
В CSS width HTML устанавливается на 100%, а высота — на auto. Браузер не сможет узнать, сколько пикселей по высоте выделить для рисунка, пока не загрузит все изображение полностью и не проверит заголовок файла, чтобы узнать его размер. Если атрибуты width и height отсутствуют, программа не сможет этого сделать. Но если оба атрибута указаны, браузер сможет вычислить это с помощью математических расчетов:
display_height = img_height × ( display_width ÷ img_width )
Сделав это, можно предотвратить ситуацию, когда при загрузке изображения оно сдвигает контент вниз и происходит раздражающий резкий скачок, в результате которого пользователь теряет из виду часть текста. Используйте атрибуты HTML width height правильно – определяйте исходную высоту изображения, а не указывайте размер, в котором оно должно отображаться на странице.
IE | Firefox | Chrome | Edge | Safari | Opera |
Полностью | Полностью | Полностью | Полностью | Полностью | Полностью |
АРАлина Рыбакавтор
Как правильно оптимизировать картинки для сайта
Постараюсь сделать краткую инструкцию по правильному использованию изображений на сайте.
Речь пойдет не об элементах дизайна, а о картинках в виде контента (фото, галереи, скриншоты, инструкции, сканы документов и т.д.).
Главная проблема – Контент-менеджер или сам заказчик получает фото для размещения на сайте и сразу загружает их на сайт.
Это проблема №1, потому что никто не смотрит, что там за фотки, какого они размера, веса и как называются, а это всё важные моменты, потому что:
- Размер фото не должен превышать ширину того блока, в котором изображение будет находиться, то есть, если это фото размещенное внутри статьи и его размер внутри контента будет 300px, то совершенно не нужно загружать фото шириной 5000px, если же это фото для слайдера или галереи, которая может использовать попап, тогда максимальная ширина фото будет соответствовать ширине экрана, я обычно задаю 1920px.
- Вес фоток не должен измеряться в Мегабайтах, оптимально, чтобы размер фоток был до 200 КБ, но может быть и больше в зависимости от размера и формата изображения. Но если фото весит больше 1Мб, тогда это проблема.
- Название фото должно быть прописано только латиницей без пробелов и спецсимволов. Нельзя использовать кириллицу, пробелы и спецсимволы, из-за того, что на различных хостингах с таким форматом могут возникнуть проблемы, и почти на всех хостингах после архивации-разархивации (при переносе или восстановлении из бекапа) кириллица будет преобразована в какие-то непонятные знаки, и пути к файлам, сохраненные в базе данных или прописанных в коде не будут соответствовать обновленным именам файлов… Только латиница.
Теперь представим ситуацию, что мы получили от заказчика 20 фоток, которые нужно добавить в галерею. Мы могли бы просто взять и сразу их загрузить, но вы уже начали читать эту статью и начали думать.
20 фоток весят 93МБ? Наверное, стоит уменьшить их вес. Ширина некоторых фото 5000px? Зачем, если галерея сайта ограничивает размер фото до 1200px. Все фотки имеют разные названия и, чаще всего, это набор символов и цифр, сгенерированный камерой и ничем не полезный ни для пользователя, ни для поисковых систем? Тогда лучше использовать простой шаблон в названии фоток с привязкой к какому-то событию или названию статьи.
[vc_message color=”alert-success”]Если, нужно изменить одно или два изображения, тогда это будет проще и быстрее сделать с помощью Photoshop, через CTRL+ALT+i поменять размер и сохранить результат для WEB через CTRL+ALT+SHIFT+S.[/vc_message]
Но у нас 20 фоток (а бывает и больше), тогда нужен инструмент для пакетного изменения изображений.
С помощью программы FastStone Photo Resizer мы можем пакетно изменить размеры и названия для фоток. Скачать ее можно здесь faststone.org/FSResizerDownload.htm.
Краткая инструкция:
- Добавляем файлы для обработки (1), выбираем папку для обработанных файлов (2), задаем новое имя для файлов (3) и задаем настройки для ресайза (4)
- В настройках для данного сайта я задаю ресайз до 1200px, потому что там галерея ограничивает размер фото до 1200, а, обычно, для галерей я задаю размер 1920
- На выходе получаем такие результаты:
как видим, общий вес был 93МБ, а стал 6Мб, что для 20 файлов довольно таки неплохо.
Данный результат неплох, но не идеален. Для того, чтобы Google Page Speed не ругался на вес фоток, мы их еще немного оптимизируем.
Для финальной оптимизации изображений отлично подойдет 1 из 2 онлайн ресурсов tinypng.com или kraken.io. Я сейчас пользуюсь, в основном, первым.
И это позволяет нам сжать фотки еще на 46% сохранив при этом еще 3МБ
По итогу, наша страница будет загружать пользователю не 93Мб больших изображений, а загрузит всего навсего 3Мб фоток нужного размера. Плюс экономится место на вашем хостинге, потому что 10 таких галерей и дешевый хостинг уже будет забит почти на 1 Гигабайт, тогда как 10 галерей по 3МБ займет всего 30МБ.
В данной статье всего 4 картинки, но оптимизировав их через tinypng.com я уменьшил вес с 1370КБ до 350КБ, или на 75%, может и мелочь, но пользователю нужно будет загрузить на 1МБ меньше, значит страница загрузится быстрее.
[vc_message color=”alert-info”]Важно проверить качество изображений после всех процедур, так как могут появиться артефакты, тонкие линии могут размыться, а сложные рисунки с мелкими деталями могут поплыть. Поэтому, если вам качество графических материалов важнее их веса и скорости загрузки на сайте, тогда можно пропустить последний шаг.[/vc_message]
Чуть позже я еще напишу что-нибудь про альты и тайтлы, но неизвестно когда.
Как настроить размер изображения в html с помощью css
спросил
Изменено 3 года, 8 месяцев назад
Просмотрено 4к раз
Я разрабатываю ионное приложение и хочу отображать некоторые изображения на некоторых карточках, проблема в том, что мои изображения имеют не тот размер, и я хочу, чтобы они выглядели так.
Идея состоит в том, чтобы использовать класс css, который решит проблему (по крайней мере, по ширине)
.full-width-image { ширина: 100% }
этот класс решит проблему размера и все изображения будут иметь некоторую ширину. как бы то ни было, я не знаю, как сделать фиксированную высоту для них всех. если я добавлю в свой класс CSS фиксированную высоту, например:
.full-width-image { ширина: 100%; высота: 60 пикселей; }
некоторые картинки будут выглядеть некрасиво: как это выглядит
я хочу скрыть лишнюю часть изображения.
- HTML
- CSS
3
Если у вас есть заданная ширина и высота, вы можете использовать object-fit: cover;
, чтобы изображение заполнило все пространство без потери соотношения сторон.
Я бы порекомендовал вам использовать гибкую обертку вокруг изображения.
.обертка { дисплей: гибкий; выравнивание содержимого: по центру; выравнивание элементов: по центру; box-shadow: 0 0 2px серый; ширина: 100 пикселей; высота: 100 пикселей; переполнение: скрыто; поле: 1em; } . wrapper изображение { граница: 1px сплошной черный; максимальная ширина: 100%; максимальная высота: 100%; } .пример { дисплей: гибкий; }
<дел> <дел>