Конвертер RGB в HEX
Быстро преобразуйте rgb(r, g, b) значения в HEX цветовые коды. Этот конвертер полезен, когда вы работаете с CSS, дизайнерскими токенами или хотите согласовать цвета между инструментами дизайна и кодом.
Введите значение в формате RGB или HEX, и второе поле обновится сразу. Конвертация работает в обе стороны, так что вы можете начать с того формата, который более удобен для вашего рабочего процесса.
Вы также можете поэкспериментировать с выбором цвета. Когда вы перемещаете ползунок, значения RGB и HEX пересчитываются мгновенно, что облегчает тонкую настройку акцентных цветов, фонов или семантических токенов.
Понимание RGB цветов
Модель RGB описывает цвет как смесь красного, зеленого и синего света. Каждый компонент — это число от 0 до 255, где 0 означает, что канал выключен, а 255 означает полную интенсивность.
Когда эти три канала комбинируются, они формируют цвета, которые вы видите на мониторах, телефонах и телевизорах. Например, rgb(255, 255, 255) — это белый, rgb(0, 0, 0) — черный, а rgb(255, 165, 0) соответствует яркому оранжевому оттенку.
Значения RGB особенно практичны в динамических интерфейсах, потому что вы можете программно управлять каждым каналом, генерировать цветовые палитры и создавать переходы, которые интерполируют между числовыми значениями.
Что такое HEX цветовой код?
HEX цвет — это тот же RGB цвет, записанный в шестнадцатеричной системе. Стандартный формат — #RRGGBB, где каждая пара символов представляет красный, зеленый и синий каналы в системе счисления с основанием 16.
Вместо десятичных чисел от 0 до 255, HEX использует значения от 00 до FF. Цифры A–F обозначают десятичные числа от 10 до 15. Браузеры разбирают строку, делят ее на три пары, конвертируют каждую в десятичное значение, а затем отображают соответствующий RGB цвет.
Этот компактный формат широко используется в CSS, инструментах дизайна и стилевых руководствах, потому что он короткий, легко копируемый и хорошо работает в качестве токена для основных, вторичных и семантических цветов.
Формула конвертации RGB в HEX
rgb(r, g, b) → #RRGGBB
RR = dec_to_hex(r)
GG = dec_to_hex(g)
BB = dec_to_hex(b)
// Вспомогательная функция:
dec_to_hex(x) = to_hex(x).padStart(2, "0")Чтобы преобразовать из RGB в HEX, вы преобразуете каждое значение канала (от 0 до 255) в двухзначную шестнадцатеричную строку, а затем объединяете три части с ведущим #.
// Пример для rgb(79, 163, 194)
r = 79 → 4F
g = 163 → A3
b = 194 → C2
#4FA3C2Если вы хотите ознакомиться с тем, как работают шестнадцатеричные числа или как выполняется преобразование оснований, вы можете открыть <a href="/number-systems" rel="noopener noreferrer">руководство по системам счисления</a>.
Как работает конвертация RGB в HEX шаг за шагом
Значения RGB записываются как три десятичных числа. Во время конвертации каждое из этих чисел переводится в двухзначный HEX фрагмент и затем объединяется в единый цветовой код.
rgb(26, 43, 60)
↓ ↓ ↓
[26, 43, 60] → #1A2B3CВот подробное разбиение для rgb(26, 43, 60):
- Шаг 1 — Отделите три канала:
[26] [43] [60] - Шаг 2 — Преобразуйте каждое значение из десятичного в HEX:
Вы многократно делите десятичное значение на 16 или используете встроенную вспомогательную функцию. Остаток на каждом шаге сопоставляется с HEX цифрой (0–9, A–F).
26 → 1A 43 → 2B 60 → 3CВ этом примере все три канала остаются в пределах 0–255, поэтому каждый из них становится двухсимвольным HEX фрагментом.
- Шаг 3 — Объедините части и добавьте символ #:
#1A2B3C
Тот же подход работает для любого действительного RGB триплета: преобразуйте каждый компонент независимо, затем объедините результаты в единый HEX код.
Выбор между RGB и HEX в CSS
Как RGB, так и HEX описывают одни и те же цвета, но один формат может быть более удобным, чем другой, в зависимости от ситуации. Выбор обычно сводится к тому, как вы читаете, редактируете и делитесь значениями цвета в проекте.
Когда RGB более практичен
- Явное управление каналами: значения для красного, зеленого и синего видны прямо в вызове функции, что полезно для анимаций или алгоритмической генерации цвета.
- Тонкая настройка с помощью JavaScript: числовые каналы легко увеличивать, уменьшать или ограничивать в коде.
- Работа с прозрачностью: вариант
rgba()добавляет параметр альфа, сохраняя ту же структуру, что удобно для наложений и теней.
Когда HEX лучше подходит
- Компактная нотация: короткая строка, такая как
#1A2B3C, удобна для токенов, дизайнерских систем и общих палитр. - Согласование с инструментами дизайна: большинство графических редакторов по умолчанию отображают и экспортируют цвета в HEX, поэтому вы можете копировать значения без дополнительного преобразования.
- Читаемые пресеты: HEX коды легко сканировать, когда вы ведете список основных, вторичных и нейтральных цветов для интерфейса.
Резюме
Используйте RGB/RGBA, когда вам нужно напрямую управлять цветными каналами или непрозрачностью в коде. Предпочитайте HEX, когда вам нужно краткое, стабильное значение для дизайнерского токена или когда вы в основном копируете цвета из инструментов дизайна. Вы всегда можете конвертировать между ними без потери точности.
Практические советы по работе с цветами в CSS
Современный CSS принимает несколько цветовых форматов, поэтому стоит выбрать один или два в качестве стандарта в вашем проекте. Это делает дизайнерские токены последовательными и упрощает поддержку стилей.
Выберите основной цветовой формат
- HEX: хорош как базовый формат для дизайнерских систем и документации.
- RGB/RGBA: удобно для эффектов, наложений и переходов состояний, где важна непрозрачность.
- HSL/HSLA: полезно, когда вы хотите регулировать оттенок, насыщенность или яркость предсказуемым образом.
Используйте сокращения осторожно
- #RGB вместо #RRGGBB: трехсимвольная форма действительна только тогда, когда каждая пара состоит из одинаковых цифр. Например,
#FA3расширяется до#FFAA33.
Запись HEX с альфа
- #RRGGBBAA: это восьмисимвольный HEX формат, который включает непрозрачность. Последние две цифры определяют альфа-канал от
00(прозрачный) доFF(полностью непрозрачный). - Если вы уже используете HEX токены, HEX с альфа позволяет вам сохранить тот же стиль, добавляя прозрачность там, где это необходимо.
Типичные ошибки
- Смешивание многих форматов в одном файле: придерживание небольшого набора форматов упрощает темы и рефакторинг.
- Анимация HEX напрямую: для более плавных переходов переключитесь на
rgb(),rgba()илиhsl()в ключевых кадрах. - Забывание о контрасте: при определении цветов всегда проверяйте читаемость на светлом и темном фоне.
С последовательным подходом к цветовым форматам и четкой стратегией токенов стили остаются читаемыми, масштабируемыми и легче поддаются рефакторингу по мере развития дизайна.
Таблица конвертации RGB в HEX
Следующая справочная таблица показывает несколько общих цветов как в RGB, так и в HEX формах. Вы можете использовать ее как быстрый справочник при работе с темами, макетами или палитрами бренда.
| Описание | HEX | RGB |
|---|---|---|
| Белый | #FFFFFF | rgb(255, 255, 255) |
| Черный | #000000 | rgb(0, 0, 0) |
| Красный | #FF0000 | rgb(255, 0, 0) |
| Зеленый | #00FF00 | rgb(0, 255, 0) |
| Синий | #0000FF | rgb(0, 0, 255) |
| Желтый | #FFFF00 | rgb(255, 255, 0) |
| Циан | #00FFFF | rgb(0, 255, 255) |
| Магента | #FF00FF | rgb(255, 0, 255) |
| Серый 1 | #111111 | rgb(17, 17, 17) |
| Серый 2 | #333333 | rgb(51, 51, 51) |
| Серый 3 | #555555 | rgb(85, 85, 85) |
| Серый 4 | #777777 | rgb(119, 119, 119) |
| Серый 5 | #999999 | rgb(153, 153, 153) |
| Серый 6 | #CCCCCC | rgb(204, 204, 204) |
| Светло-серый | #F0F0F0 | rgb(240, 240, 240) |
| Серый UI | #E0E0E0 | rgb(224, 224, 224) |
| Темный серый UI | #1A1A1A | rgb(26, 26, 26) |
| Темно-красный | #800000 | rgb(128, 0, 0) |
| Темно-зеленый | #008000 | rgb(0, 128, 0) |
| Темно-синий | #000080 | rgb(0, 0, 128) |
| Оранжевый | #FFA500 | rgb(255, 165, 0) |
| Фиолетовый | #800080 | rgb(128, 0, 128) |
| Бирюзовый | #008080 | rgb(0, 128, 128) |
Для любой другой комбинации RGB вы можете использовать конвертер в верхней части страницы, чтобы получить точный HEX код.
Часто задаваемые вопросы: RGB в HEX
- Почему значения RGB всегда находятся в диапазоне от 0 до 255?
Каждый RGB канал хранится как 8-битное значение. Восемь бит могут представлять 256 различных состояний, что соответствует диапазону от
0до255. - Что происходит, если значение выходит за пределы этого диапазона?
Значения ниже
0обрабатываются как0, а значения выше255ограничиваются255. Для получения последовательных результатов проверьте ваш RGB ввод перед преобразованием в HEX. - Изменяет ли конвертация RGB в HEX фактический цвет?
Нет. RGB и HEX — это всего лишь два представления одних и тех же цветовых данных. Пока каждый канал остается в пределах 0–255, конвертация происходит без потерь.
- Существует ли сокращенная форма для некоторых значений RGB в HEX?
Да. Если каждая пара HEX цифр состоит из одного и того же символа, вы можете сжать
#RRGGBBв#RGB. Например,#FF00AAстановится#F0A. - Как я могу представить прозрачность при конвертации из RGB?
Вы можете либо продолжать использовать
rgba()в CSS, либо переключиться на расширенный HEX формат#RRGGBBAA, где последние две цифры представляют альфа-канал.