Пиксель
Оригинальное название: pixel
Коротко
Наименьшая точка изображения или экрана, у которой есть свой цвет. Из сетки таких точек складываются фотографии, интерфейсы и любая растровая графика.
Что такое «Пиксель»
Слово образовано от английского picture element — «элемент изображения». Любая растровая картинка — JPEG, PNG, WebP — хранится как прямоугольная сетка точек: у снимка 4000×3000 их двенадцать миллионов, и для каждой записан цвет. Экран устроен похоже: матрица монитора или смартфона состоит из физических точек, и в каждой обычно есть красный, зелёный и синий субпиксели, смешение которых даёт нужный оттенок.
Во фронтенде этим словом называют сразу три разные вещи, и путаница между ними — частая причина размытых картинок.
Три пикселя веб-разработчика
- Пиксель изображения — точка в файле. Размер картинки в таких точках называют её разрешением.
- Физический пиксель — точка матрицы конкретного устройства. Сколько их приходится на дюйм, описывает плотность пикселей.
- CSS-пиксель — логическая единица в стилях. На обычном мониторе он совпадает с физическим, а на смартфоне может занимать квадрат 3×3 точки. Подробнее — в статье про CSS-пиксель.
Пример: почему логотип мылится
Логотип сохранён в файле 200×60 и выведен в вёрстке тем же размером:
<img src="logo.png" width="200" height="60" alt="Компания-пример">
На обычном мониторе всё чётко. Но на телефоне, где на один CSS-пиксель приходится три физических, браузеру нужно 600×180 точек, а в файле их втрое меньше по каждой стороне. Недостающие он достраивает интерполяцией, и края букв расплываются. Решения — векторный SVG для логотипов и иконок или несколько вариантов растра в атрибуте srcset.
Что учитывать при подготовке графики
Размер файла в точках должен соответствовать размеру вывода с запасом для плотных экранов, но не превышать его многократно: фото шириной 4000 точек в карточке товара шириной 300 только замедляет загрузку. CMS здесь помогают: WordPress при загрузке нарезает несколько размеров и сам подставляет их в srcset, а в 1С-Битриксе уменьшенные копии готовят настройками инфоблока или методом CFile::ResizeImageGet. Правильный размер картинок — один из первых пунктов чек-листа, когда занимаются ускорением сайта на 1С-Битриксе.

