Все калькуляторы
навигация перейти Esc закрыть
Конвертеры

Цвет в вебе: почему #FF0000 — это красный

Дизайнер прислал цвет #2563EB, а вы гадаете, что это за оттенок. За решёткой прячется обычный синий, просто записанный кодом. Разбираем, почему экран собирает любой цвет из трёх каналов — красного, зелёного и синего, почему каждый канал считают от 0 до 255, откуда в HEX-коде шестнадцатеричные буквы и почему всего таких цветов ровно 16,7 миллиона.

Содержание
  1. Экран собирает цвет из трёх лучей
  2. Почему 255, а не 100
  3. HEX — та же тройка, только шестнадцатеричная
  4. Сколько всего таких цветов
  5. Сокращённая запись
  6. Коротко

Дизайнер прислал макет, а цвета в нём подписаны загадочно: #2563EB, #FF0000, #0F172A. Решётка, цифры, буквы — на оттенок совсем не похоже. Между тем это самый обычный способ записать цвет, и, разобравшись один раз, вы будете читать эти коды как названия. Начнём с того, из чего вообще складывается цвет на экране.

Экран собирает цвет из трёх лучей

Любая точка экрана светится тремя цветами сразу: красным, зелёным и синим. Отсюда и название системы — RGB, red-green-blue. Смешивая их в разной яркости, экран получает любой оттенок. Яркость каждого канала задают числом от 0 (канал погашен) до 255 (канал на максимуме):

rgb(255, 0, 0)  — красный на максимуме, остальные погашены = чистый красный
rgb(37, 99, 235) — немного красного, побольше зелёного, много синего = синий

Смешение здесь не как у красок на бумаге, а как у лучей света: цвета складываются. Все три канала на максимум — получается белый rgb(255, 255, 255). Все три в ноль — чёрный rgb(0, 0, 0). С красками наоборот: чем больше намешал, тем темнее. А на экране «всё вместе» даёт свет.

Почему 255, а не 100

Логичный вопрос: почему яркость меряют до 255, а не по-человечески до 100? Потому что 256 градаций (от 0 до 255) — это ровно один байт, минимальная удобная порция памяти. Компьютеру дешевле хранить канал в одном байте, чем в проценте. А 256 значений на канал — это уже достаточно тонкая градация, чтобы глаз не замечал ступенек между соседними оттенками.

HEX — та же тройка, только шестнадцатеричная

Писать rgb(37, 99, 235) длинно. Поэтому те же три числа записывают компактно — в шестнадцатеричном виде, и это и есть HEX-код. Фокус в том, что число от 0 до 255 умещается ровно в две шестнадцатеричные цифры (от 00 до FF, где FF = 255). Три канала по две цифры — шесть знаков после решётки:

#RRGGBB
#2563EB → 25 = 37 (R), 63 = 99 (G), EB = 235 (B) → rgb(37, 99, 235)

Буквы A–F в коде — это просто «цифры» больше девяти: шестнадцатеричная система считает 0–9, потом A(10), B(11)…F(15). Тот же принцип, что и с двоичным счётом в байтах и гигабайтах, только основание не 2 и не 10, а 16. Теперь #FF0000 читается сразу: FF — красный на максимум (255), зелёного и синего по нулю. Чистый красный.

ЦветRGBHEX
Красныйrgb(255, 0, 0)#FF0000
Зелёныйrgb(0, 255, 0)#00FF00
Синийrgb(0, 0, 255)#0000FF
Жёлтый (красный + зелёный)rgb(255, 255, 0)#FFFF00
Белый (все каналы max)rgb(255, 255, 255)#FFFFFF
Чёрный (все каналы 0)rgb(0, 0, 0)#000000

Перевести цвет в любую сторону — RGB в HEX или обратно — и заодно увидеть HSL и контрастность можно в конвертере цвета RGB ⇄ HEX.

Сколько всего таких цветов

Раз у каждого из трёх каналов 256 значений, всего комбинаций:

256 × 256 × 256 = 16 777 216

Почти 17 миллионов оттенков — это и есть «True Color», 24-битный цвет, который сегодня показывает любой монитор. Отсюда понятно, почему цвета не записывают словами: названий на 17 миллионов не напасёшься. В CSS зарезервированных имён вроде red или teal всего около полутора сотен, а HEX и RGB задают точно любой из миллионов.

Сокращённая запись

Иногда HEX короче — три знака вместо шести: #27E. Это не другой формат, а сокращение: каждую цифру просто удваивают. #27E разворачивается в #2277EE. Работает такая запись только когда в каждом канале обе цифры одинаковы, поэтому в макетах чаще пишут полную форму из шести знаков — она описывает любой цвет без ограничений.

Коротко

Цвет на экране — это яркости трёх каналов (красный, зелёный, синий), каждая от 0 до 255. HEX-код записывает те же три числа шестнадцатеричными парами: #FF0000 — это 255 красного и по нулю остального, то есть красный. Всего таких цветов 16,7 миллиона, и именно поэтому их удобнее задавать кодом, а не словом.

Частые вопросы

Почему #FF0000 — это красный?
HEX-код разбивается на три пары: красный, зелёный, синий. В #FF0000 первая пара FF = 255 (красный канал на максимуме), а следующие 00 и 00 — зелёный и синий погашены. Остаётся только красный свет, поэтому цвет чисто красный. По той же логике #00FF00 — зелёный, #0000FF — синий.
Почему каналы цвета считают до 255, а не до 100?
Потому что 256 значений (от 0 до 255) — это ровно один байт памяти, самая удобная для компьютера порция. Хранить канал в байте дешевле, чем в процентах, а 256 градаций достаточно, чтобы глаз не различал ступеньки между соседними оттенками. Три канала по байту дают 24-битный цвет.
Что означают буквы в HEX-коде цвета?
HEX записан в шестнадцатеричной системе, где после цифры 9 идут буквы: A = 10, B = 11, C = 12, D = 13, E = 14, F = 15. Так одна пара знаков (00–FF) покрывает все значения канала от 0 до 255. Например, EB — это 235: E (14) × 16 + B (11) = 235.
Сколько всего цветов можно задать через RGB?
У каждого из трёх каналов 256 значений, поэтому всего комбинаций 256 × 256 × 256 = 16 777 216 — почти 17 миллионов оттенков. Это стандарт «True Color» (24 бита), который показывают современные экраны. Именно из-за такого количества цвета задают кодом RGB или HEX, а не названиями: словарных имён в CSS всего около 150.

Источники

обновлено 12 июля 2026
Посчитайте сейчас Конвертер цвета RGB ⇄ HEX

Калькуляторы по теме статьи

Читайте также