본문 바로가기

16진법 색상코드 이해하기 - #FFFFFF가 흰색인 이유부터 실전 활용까지

웹에서 매일 마주치는 #FF5733 같은 6자리 코드, 어떤 원리로 색이 되는 걸까요? 16진법 기초부터 색상코드 읽는 법, 실무 활용 팁까지 한 번에 정리했습니다.


16진법 색상코드 이해하기 - #FFFFFF가 흰색인 이유부터 실전 활용까지

웹사이트 배경색을 바꾸려고 설정 화면을 열었는데 #FF5733 같은 알 수 없는 코드가 나와서 당황한 경험, 한 번쯤 있으실 겁니다. 숫자도 아니고 영어 단어도 아닌 이 6자리 조합이 대체 어떻게 색이 되는 걸까요? 사실 원리를 알고 나면 굉장히 단순합니다. 16진법 색상코드 이해는 30분이면 충분하고, 한 번 익혀두면 블로그 꾸미기부터 CSS 수정까지 평생 써먹을 수 있습니다.

16진법이란 무엇인가

우리가 평소 쓰는 숫자는 10진법입니다. 0부터 9까지 10개의 기호로 수를 표현하지요. 16진법은 여기에 6개를 더해 0~9와 A~F, 총 16개의 기호로 수를 표현하는 방식입니다.

  • A = 10, B = 11, C = 12
  • D = 13, E = 14, F = 15
  • 따라서 한 자리로 표현할 수 있는 가장 큰 수는 F(15)입니다

두 자리가 되면 어떨까요? 10진법에서 두 자리 최대값이 99이듯, 16진법의 두 자리 최대값은 FF입니다. 계산해 보면 15 × 16 + 15 = 255가 됩니다. 즉 16진법 두 자리로 0부터 255까지, 정확히 256가지 값을 표현할 수 있습니다. 이 256이라는 숫자가 색상코드의 핵심입니다.

왜 하필 16진법을 쓸까

컴퓨터는 데이터를 8비트(1바이트) 단위로 다루는 경우가 많고, 8비트로 표현 가능한 값이 정확히 256가지입니다. 2진법으로 쓰면 11111111처럼 8자리가 필요하지만 16진법으로는 FF, 단 두 자리면 됩니다. 짧고 정확하게 쓸 수 있어서 색상 표현의 표준이 된 것입니다.

색상코드 6자리 해부하기

모니터의 모든 색은 빨강(Red), 초록(Green), 파랑(Blue) 세 가지 빛의 조합으로 만들어집니다. 16진법 색상코드는 이 세 채널의 밝기를 각각 두 자리씩, 총 6자리로 표현한 것입니다.

#RRGGBB 구조를 기억하세요. 앞 두 자리는 빨강, 가운데 두 자리는 초록, 뒤 두 자리는 파랑의 세기입니다. 각 채널은 00(꺼짐)부터 FF(최대 밝기)까지 256단계를 가집니다.

  • #FF0000: 빨강만 최대, 나머지 0 = 순수한 빨간색
  • #FFFFFF: 세 채널 모두 최대 = 흰색 (빛을 모두 합치면 흰색이 됩니다)
  • #000000: 세 채널 모두 꺼짐 = 검은색
  • #808080: 세 채널 모두 중간값(128) = 회색

이렇게 조합 가능한 색의 수는 256 × 256 × 256 = 약 1,677만 가지입니다. 흔히 말하는 트루컬러(24비트 색상)가 바로 이것입니다.

색상코드는 암호가 아니라 좌표입니다. 빨강, 초록, 파랑이라는 세 개의 축에서 각각 얼마나 밝은지를 적어둔 것뿐입니다. 이 관점 하나만 잡으면 어떤 코드를 봐도 대략적인 색을 머릿속에 그릴 수 있습니다.

자주 쓰는 색상코드 모음

실무에서 자주 마주치는 대표 색상들을 정리했습니다. 코드와 RGB 값을 나란히 보면 구조가 한눈에 들어옵니다.

색상16진법 코드RGB 값주요 용도
흰색#FFFFFF255, 255, 255배경, 텍스트
검은색#0000000, 0, 0본문 텍스트
빨간색#FF0000255, 0, 0경고, 강조
초록색#0080000, 128, 0성공, 완료 표시
파란색#0000FF0, 0, 255링크, 버튼
노란색#FFFF00255, 255, 0하이라이트
주황색#FFA500255, 165, 0알림, 포인트
회색#808080128, 128, 128보조 텍스트
참고: #FFF처럼 3자리로 줄여 쓴 코드도 있습니다. 각 자리를 두 번 반복한 것과 같아서 #FFF는 #FFFFFF, #F00은 #FF0000과 동일합니다. CSS에서 정식으로 지원하는 축약 표기입니다.

실무에서 유용한 활용 팁

투명도까지 표현하는 8자리 코드

최신 CSS에서는 #RRGGBBAA처럼 8자리 코드도 지원합니다. 마지막 두 자리가 투명도(알파값)로, 00은 완전 투명, FF는 완전 불투명입니다. 예를 들어 #FF000080은 절반쯤 투명한 빨간색이 됩니다.

URL에 색상코드를 넣을 때는 인코딩 필수

색상코드를 웹 주소의 파라미터로 전달할 일이 종종 있습니다. 예를 들어 배너 생성 도구에 color=#FF5733 같은 값을 넘기는 경우인데, 여기서 문제가 생깁니다. # 기호는 URL에서 특별한 의미(페이지 내 위치 이동)를 갖기 때문에 그대로 쓰면 # 뒤의 값이 잘려나갑니다. 이럴 때는 #을 %23으로 변환해서 color=%23FF5733 형태로 넣어야 합니다. 변환 규칙이 헷갈린다면 URL 인코더에 붙여넣기만 하면 바로 변환된 값을 얻을 수 있습니다.

이미지에서 색을 추출했다면 용량도 함께 챙기기

디자인 작업을 하다 보면 사진이나 로고에서 스포이드로 색을 추출해 색상코드를 얻는 경우가 많습니다. 이렇게 뽑은 색으로 사이트를 꾸민 뒤 원본 이미지를 그대로 올리면 로딩 속도가 느려지기 쉽습니다. 업로드 전에 이미지 압축 도구로 용량을 줄여두면 색감은 유지하면서 페이지 속도를 지킬 수 있습니다.

팁: 크롬 브라우저에서 F12를 눌러 개발자 도구를 열고 원하는 요소를 검사하면, 해당 요소의 색상코드를 바로 확인하고 색상 피커로 수정 시뮬레이션까지 해볼 수 있습니다. 별도 프로그램 설치가 필요 없습니다.

자주 하는 실수와 마무리 정리

초보자가 흔히 겪는 실수 몇 가지를 짚고 넘어가겠습니다.

  • 대소문자 혼동: #ff0000과 #FF0000은 완전히 같은 색입니다. 대소문자를 구분하지 않으니 걱정하지 않아도 됩니다
  • 자릿수 누락: #FF00처럼 4자리나 5자리 코드는 유효하지 않습니다. 3자리, 6자리, 8자리만 정상 동작합니다
  • # 기호 생략: CSS에서 color: FF0000처럼 #을 빼먹으면 색이 적용되지 않습니다
  • 모니터별 색 차이: 같은 코드라도 모니터 설정에 따라 다르게 보일 수 있습니다. 코드가 틀린 게 아니라 화면 보정의 문제입니다

오늘 배운 내용을 실전으로 연결해 보세요. 먼저 자주 가는 웹사이트를 열고 개발자 도구로 버튼이나 배경의 색상코드를 직접 확인해 보는 것입니다. 그리고 그 코드를 #RRGGBB 구조로 나눠서 빨강, 초록, 파랑이 각각 얼마나 섞였는지 읽어보세요. 이 연습을 서너 번만 반복하면 색상코드가 더 이상 암호처럼 보이지 않을 것입니다.

3일 무료체험큰손탐지기, 지금 바로 시작하세요

설치 없이 웹에서 바로 사용 가능 · PC & 모바일 지원

무료체험 시작
카카오톡 상담