~ / developer / color-converter

🎨 색상 코드 변환기 (HEX·RGB·HSL)

HEX · RGB · HSL 변환, 셰이드 팔레트, WCAG 대비율 체크. 아무 칸에나 입력하면 나머지가 따라옵니다.

광고
광고
#C6FF3D click to pick
shades — 50 → 950 · 클릭하면 HEX 복사
contrast checker (WCAG 2.x)
The quick 스미스 연구소
본문 텍스트는 이렇게 보입니다. 0123456789
작은 캡션 텍스트 · small caption
—
광고

사용법

  1. hex, rgb, hsl 중 아무 칸에 색을 입력하면 나머지 형식이 자동으로 채워집니다. 왼쪽 큰 색상 견본을 클릭하면 컬러 피커로 고를 수도 있습니다.
  2. 각 칸 옆 copy로 값을 복사하고, css var 칸은 --color-brand: #HEX; 형태의 CSS 변수 선언을 제공합니다.
  3. shades에는 같은 색상(Hue)·채도로 밝기만 바꾼 50~950 단계 팔레트가 만들어집니다. 칸을 클릭하면 HEX가, copy as css를 누르면 --brand-50~--brand-950 변수 11줄이 복사됩니다.
  4. contrast checker에서 글자색(text)과 배경색(bg)을 지정하면 대비율과 WCAG 통과 여부가 표시됩니다. swap ⇄으로 두 색을 맞바꿀 수 있습니다.

주소창 끝에 #FF6600처럼 HEX가 붙어 있으면 그 색으로 시작하고, 색을 바꿀 때마다 주소도 갱신되어 링크로 공유하기 좋습니다.

HEX · RGB · HSL 차이

셰이드 팔레트는 어떻게 만들어지나요?

입력한 색을 HSL로 바꾼 뒤 색상(H)과 채도(S)는 그대로 두고, 밝기(L)만 97, 93, 85, 75, 63, 52, 43, 35, 27, 20, 12%로 바꿔 11단계를 만듭니다. 숫자가 작을수록 밝은 색이고, 500 근처가 기준색과 비슷한 중간 톤입니다. 버튼 배경은 500~600, 호버 상태는 한 단계 진한 색, 연한 배경 박스는 50~100처럼 역할을 나눠 쓰면 일관된 화면을 만들기 쉽습니다. 각 칸의 숫자 색은 배경 밝기에 따라 검정·흰색 중 잘 보이는 쪽으로 자동 선택됩니다.

변환 예시

주황색 #FF6600을 hex 칸에 넣으면 이렇게 나와요.

항목결과계산
RGBrgb(255, 102, 0)FF=255, 66=102, 00=0
HSLhsl(24, 100%, 50%)최댓값 R, 최솟값 B → 밝기 (1+0)÷2 = 50%
셰이드 500 / 700 / 900#FF6C0A / #B34700 / #662900H·S 고정, 밝기 52% / 35% / 20%
흰 배경 대비2.94 : 1 (AA 본문 FAIL)흰 바탕 글자색으로는 부족해요
검정 글자 대비7.15 : 1 (AAA 본문 PASS)주황 배경엔 검정 글씨가 잘 읽혀요

처음 화면의 기본값(글자 #0A0B0D, 배경 #C6FF3D)은 대비율 16.66 : 1로 네 기준을 모두 통과해요.

WCAG 대비율 기준

대비율은 두 색의 상대 휘도 L로 (L밝은 + 0.05) ÷ (L어두운 + 0.05)를 계산한 값으로, 1:1(같은 색)부터 21:1(검정/흰색)까지 나옵니다.

등급본문 텍스트큰 글씨
AA (권장 최소)4.5 : 1 이상3 : 1 이상
AAA (강화)7 : 1 이상4.5 : 1 이상

"큰 글씨"는 보통 18pt(약 24px) 이상, 또는 굵게 14pt(약 18.7px) 이상을 말합니다.

투명도(alpha)는 지원하지 않습니다. rgba(), hsla()를 입력하면 알파 값은 무시되고, 8자리 HEX(#RRGGBBAA)는 인식하지 않습니다. 셰이드 팔레트는 HSL 밝기를 고정 단계로 나눈 단순한 방식이라 Tailwind 기본 팔레트와 정확히 같지는 않습니다.

변환 공식과 표준

HEX·RGB·HSL은 모두 같은 sRGB 색을 다르게 적은 거예요. 정의는 W3C CSS Color Module Level 4에 있어요.

광고

16진수 두 자리 빠른 표

HEX10진수비율HEX10진수비율
0000%9915360%
335120%B317970%
4D7730%CC20480%
6610240%E623090%
8012850%FF255100%

8자리 HEX(#RRGGBBAA)의 마지막 두 자리도 이 표로 읽어요. #FF660080은 주황 50% 불투명이에요(이 도구는 8자리를 받지 않으니 앞 6자리만 넣으세요).

예시 3가지

  1. 기본 색 #C6FF3D → rgb(198, 255, 61), hsl(78, 100%, 62%). 초록 채널이 가장 커서 색상각이 노랑(60°)과 초록(120°) 사이 78°로 나와요.
  2. HSL로 입력 — hsl(210, 100%, 50%)을 넣으면 #0080FF, rgb(0, 128, 255)이에요. 50% 밝기에서 G는 정확히 127.5라 반올림으로 128(80)이 돼요.
  3. 어두운 남색 rgb(18, 52, 86) → #123456, hsl(210, 65.4%, 20.4%). 채도·밝기에 소수점이 붙는 색은 HSL을 정수로 반올림해 적으면 원래 HEX로 정확히 돌아오지 않을 수 있어요.

CSS에서 쓰는 다른 표기

표기예이 도구에서
공백 문법 + 알파rgb(255 102 0 / 50%)RGB만 읽고 알파는 무시 → #FF6600
이름 색orange = #FFA500, tomato = #FF6347입력 안 됨 — HEX로 넣기
HWBhwb(24 0% 0%)입력 안 됨
OKLCHoklch(70% 0.2 50)입력 안 됨 (sRGB 밖의 넓은 색역까지 표현)
광고
광고

흔한 실수

글자와 배경 대비를 AA·AAA 기준으로 자세히 따지고 통과하는 가장 가까운 색까지 찾으려면 색상 대비 검사기를 쓰세요.

자주 묻는 질문

HEX를 RGB로 직접 계산하려면?
두 자리씩 끊어 16진수를 10진수로 바꾸면 됩니다. #C6FF3D → C6=198, FF=255, 3D=61 → rgb(198, 255, 61).
대비율 4.5:1이 안 나오면 어떻게 고치나요?
HSL의 밝기(L)만 조절하는 것이 가장 쉽습니다. shades 팔레트에서 더 진한 단계(700~900)를 글자색으로 골라 contrast checker에 넣어 보세요.
입력칸이 빨갛게 변해요
형식을 인식하지 못했다는 뜻입니다. HEX는 3자리 또는 6자리, RGB는 각 값 0~255, HSL은 채도·밝기 0~100 범위여야 합니다.
HSL과 HSV(HSB)는 같은 건가요?
아니에요. 둘 다 색상각을 쓰지만 HSL은 밝기 100%가 흰색, HSV는 명도 100%가 가장 선명한 원색이에요. 포토샵·피그마 색상 선택기의 HSB 값은 HSL과 다르니 그대로 옮기면 색이 달라져요. CSS가 직접 지원하는 건 HSL이에요.
#RRGGBBAA 8자리 HEX 투명도는 어떻게 읽나요?
마지막 두 자리가 알파예요. FF가 100%, CC가 80%, 80이 약 50%, 33이 20%예요. 브라우저는 모두 지원하지만 이 도구는 6자리만 받으니 앞 6자리를 넣고, 투명도는 CSS에서 따로 적용하세요.

관련 도구

이 도구와 함께 보면 좋은 글

광고

더 둘러보기

💻 개발자 다른 도구

🔥 많이 찾는 도구

🔮 재미로 한 번 더

📝 읽어 볼 만한 글

글 전체 보기 →