CSS

웹에서 색상 표현하기

mukom 2022. 10. 19. 19:07

1. 16진수 표기법

 

16진수로 색상을 표기하는 방식으로 반드시 # 을 포함하여 작성한다.

6자리로 나타내는 것이 가장 기본적인 방식이며, 

각 두 자리씩 빨간색, 초록색, 파란색을 나타낸다.

#RRGGBB

위는 색상만 나타낸 것으로 실제 들어갈 수 있는 값은 다음과 같다.

10
진수
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
16
진수
0 1 2 3 4 5 6 7 8 9 a b c d e f

값이 커질수록 흰색에 가까워지고, 값이 작아질수록 검정색에 가까워진다.

#ffffff : 흰색
#000000 : 검정색

위처럼 값이 두 자리씩 중복되는 경우에는 다음과 같이 줄여 쓸 수 있다.

#fff : 흰색
#000 : 검정색

이는 사용의 편의성 때문에 가능한 것으로 실제로 값은 여섯 자리로 기록된다.

 

또한 투명도의 두 자리를 추가하여 총 8 자리로 나타낼 수도 있다.

#RRGGBBAA

투명도는 0에 가까울수록 투명해지고, f 값에 가까워 질수록 불투명 해진다.

8 자리에서도 두 자리씩 값이 중복되면 4 자리로 줄여서 나타낼 수 있다.

 

 

2. rgb 와 rgba 표기법

 

rgb 는 10 진수로 표기하며 0 부터 255 로 나타낼 수 있다.

a 는 alpha 즉 투명도를 나타내는 값으로 퍼센트이기 때문에 0 부터 1 을 포함한 소수점으로 나타낸다.

소수점을 쓸 때는 예를 들어 0.8 즉 80% 를 .8 로 사용할 수도 있다.

 

0 에 가까울수록 색이 섞이지 않다는 것이고, 255 에 가까울수록 해당 색깔이 굉장히 많이 섞었다는 것이다.

color : rgb(255, 0, 0)
color : rgb(255, 0, 0, .9)

 

 

3. hsl 와 hsla 표기법

 

h 는 hue (색상), s 는 saturation (채도), l 은 lightness (명도) 를 나타낸다.

색상은 각도로 나타내며 0 도부터 360 도까지 사용 가능하다.

 

예를 들어 h 값으로 240 을 작성하면 파란색을 나타내게 된다.

 

채도는 퍼센트로 표시하며 100% 가 해당 색상에 아무것도 섞이지 않은 상태이다.

명도 또한 퍼센트로 표시하며 100%에 가까울수록 흰색에 가까워진다.

color : hsl(240, 100%, 0%);
color : hsla(240, 100%, 0%, .5);