Color roles – Material Design 3
Primary(주조색), Secondary(2차), Tertiary(3차), Error, Surface(표면), Outline(윤곽선)의 6가지 그룹으로 구성된 26가지 표준 색상 역할이 있습니다.
색상 역할이란 무엇인가요?
색상 역할은 paint by number 캔버스의 ‘숫자’와 같습니다. 색 역할은 UI의 요소와 어떤 색을 어디에 배치할지를 연결하는 결합 조직입니다.
- 색상 역할은 머티리얼 컴포넌트(구성요소)에 매핑됩니다.
정적 베이스라인 구성표를 사용하든 동적 색상을 사용하든 이러한 색상 역할을 사용하게 됩니다. 제품에 사용자 지정 컴포넌트가 포함되어 있는 경우 이 색상 역할 세트에 적절하게 매핑되어야 합니다. - 색상 역할은 접근성을 보장합니다.
컬러 시스템은 접근 가능한 색상 페어링을 기반으로 합니다. 이러한 색상 쌍은 접근 가능한 최소 3:1 대비를 제공합니다. - 색상 역할은 토큰화됩니다.
역할은 토큰을 통해 디자인과 코드에서 구현됩니다. 디자인 토큰은 디자인 시스템의 시각적 스타일의 일부인 재사용 가능한 작은 디자인 결정을 나타냅니다.
General concepts(일반 개념)
다음은 색상 역할의 이름에서 볼 수 있는 알아두면 유용한 단어입니다:
- Surface(표면) – 화면의 배경과 중요도가 낮은 넓은 영역에 사용되는 역할입니다.
- Primary, Secondary, Tertiary(1차, 2차, 3차) – 전경 요소(foreground elements)를 강조하거나 덜 강조하는 데 사용되는 액센트 컬러 역할입니다.
- Container(컨테이너) – 버튼과 같은 전경 요소의 채우기 색상으로 사용되는 역할입니다. 텍스트나 아이콘에는 사용되지 않는 것이 좋습니다.
- On(위에) – 이 용어로 시작하는 역할은 페어링된 부모 색(parent color) 위에 있는 텍스트 또는 아이콘의 색을 나타냅니다. 예를 들어, on primary는 주요 채우기 색상(primary fill color)에 대한 텍스트 및 아이콘에 사용됩니다.
- Variant(변형) – 이 용어로 끝나는 역할은 변형이 아닌 쌍(non-variant pair)보다 강조도가 낮은 대안을 제공합니다. 예를 들어 윤곽선 변형(outline variant)은 윤곽선 색의 덜 강조된 버전입니다.
색상 페어링 및 레이어링
앱에서 접근 가능한 시각적 대비를 보장하기 위해, 다음 섹션에서 설명하는 의도된 페어링 또는 레이어링 순서대로만 색상을 적용하세요.
색상을 부적절하게 조합하면 시각적 접근성에 필요한 대비가 깨질 수 있으며, 특히 사용자 제어 대비와 같은 동적 색상 기능을 통해 색상을 조정하는 경우 더욱 그렇습니다.
액센트 컬러 역할
강조 색상 역할에는 1차, 2차, 3차가 있습니다. 중요도와 필요한 강조도에 따라 UI의 요소에 할당합니다. 시각적 효과를 위해 색상 역할을 변경할 때는 주의하세요.
- Primary roles 1차 역할은 새 메시지를 시작하는 FAB(Floating Action Button)과 같이 가장 강조할 필요가 있는 중요한 동작 및 요소에 사용됩니다.
- Secondary roles 2차 역할은 내비게이션 아이콘의 선택된 상태나 해제 버튼과 같이 즉각적인 주의가 필요하지 않고 강조할 필요가 없는 요소에 사용됩니다.
- Tertiary roles 3차 역할은 배지나 알림과 같이 특별히 강조해야 하지만 즉각적인 주의가 필요하지 않은 작은 요소에 사용됩니다.
2. Tertiary 색상은 후속 조치(follow up)를 암시하는 배지와 같이 덜 강조된 요소에 사용됩니다.
3.Secondary 색상은 비활성 별 아이콘의 배경 및 받은 편지함 아이콘의 선택 상태와 같이 덜 긴급한 요소에 사용됩니다.
Primary
FAB(Floating Action Button), 강조도가 높은 버튼 및 활성 상태와 같이 UI에서 가장 눈에 잘 띄는 구성 요소에 primary 역할을 사용합니다.
- Primary – Surface(표면)에 대한 강조도가 높은 채우기, 텍스트 및 아이콘
- On primary – Primary에 대한 텍스트 및 아이콘
- Primary container – Surface(표면)에 대비되는 두드러진 채우기 색상, FAB와 같은 주요 구성 요소용
- On primary container – Primary container에 대비되는 텍스트 및 아이콘
2. Primary
2. Primary container
Secondary
필터 칩과 같이 UI에서 눈에 잘 띄지 않는 구성 요소에는 secondary 역할을 사용합니다.
Secondary 역할에는 네 가지가 있습니다:
- Secondary – Surface(표면)에 대한 덜 두드러지는 채우기, 텍스트 및 아이콘
- On secondary – Secondary에 대한 텍스트 및 아이콘
- Secondary container – 색조(tonal) 버튼과 같은 열성(recessive)구성 요소에 대해, 표면 대비 덜 눈에 띄는 채우기 색상
- On secondary container – secondary container에 대한 텍스트 및 아이콘
2. Button: Secondary container
Tertiary
1차 색상과 2차 색상의 균형을 맞추거나 입력 필드와 같은 요소에 주의를 집중시키기 위한 대조적인 악센트에 3차 역할을 사용합니다.
Tertiary 역할에는 네 가지가 있습니다:
- Tertiary – 표면에 대한 보완적인 채우기, 텍스트 및 아이콘
- On tertiary – Tertiary에 대한 텍스트 및 아이콘
- Tertiary container – 입력 필드와 같은 컴포넌트의 경우 표면에 대한 보완적인 컨테이너 색상
- On tertiary container – Tertiary container에 대한 텍스트 및 아이콘
3차 색상 역할은 디자이너의 재량에 따라 적용할 수 있습니다. 보다 폭넓은 색상 표현을 지원하기 위한 것입니다.
2. Tertiary container
Error
에러 역할을 사용하여 텍스트 필드에 잘못된 비밀번호를 입력하는 등의 오류 상태를 전달하세요.
에러 역할에는 네 가지가 있습니다:
- Error – 채우기, 아이콘 및 텍스트의 표면에 주의를 끄는 색상으로 긴급함을 나타냅니다.
- On error – 오류에 대한 텍스트 및 아이콘
- Error container – 표면에 대비되는 주의를 끄는 채우기 색상
- On error container – Error container에 대한 텍스트 및 아이콘
에러는 정적 색상의 예입니다(동적 색상 구성표에서도 변경되지 않음). 오류 색 역할은 모든 동적 색상 구성표에서 기본적으로 정적으로 만들어집니다.
Surface
보다 중립적인 배경(neutral backgrounds) 그리고 카드, 시트 및 대화 상자와 같은 구성 요소를 위한 컨테이너 색상에는 Surface 역할을 사용합니다.
Surface 역할에는 세 가지가 있습니다:
- Surface – 배경의 기본 색상
- On surface – 모든 surface 색상에 대한 텍스트 및 아이콘
- On surface variant – 모든 표면 색상에 대한 텍스트 및 아이콘의 강조도가 낮은 색상
또한 강조 수준에 따라 이름이 지정된 5가지 surface 컨테이너 역할이 있습니다:
- Surface container lowest – 가장 낮은 강조 컨테이너 색상
- Surface container low – 낮은 강조의 컨테이너 색상
- Surface container – 기본 컨테이너 색상
- Surface container high – 강조도가 높은 컨테이너 색상
- Surface container highest – 가장 높은 강조도의 컨테이너 색상
Surface container가 기본 역할이지만, 다른 컨테이너는 확장 화면용 레이아웃에서 계층 구조 및 중첩된(nested) 컨테이너를 만드는 데 특히 유용합니다.
The five surface container roles, shown in light and dark theme
가장 일반적인 surface 역할 조합은 배경 영역에는 서피스를, 내비게이션 영역에는 서피스 컨테이너를 사용합니다.
2. Surface container
모든 색상 매핑, 특히 surface 색상은 모든 윈도우 사이즈 클래스에 걸쳐 레이아웃 영역에서 동일하게 유지되어야 합니다. 예를 들어 본문 영역은 surface 색상을 사용하고 내비게이션 영역은 모바일과 태블릿 모두에서 surface container 색상을 사용합니다.
2. Surface container
필요한 계층 구조, 기능 영역 및 디자인 로직에 따라 색상이 일관되게 적용되는 한 더 큰 창 클래스 크기에서 애드온(추가) 표면 색상을 사용할 수 있습니다.
이 예제에서는 본문 및 탐색 영역이 모든 창 크기 클래스(각각 Surface 및 Surface 컨테이너)에서 동일한 색상 역할을 하며, 더 큰 크기에서는 다른 Surface 컨테이너 색상이 추가됩니다.
기본적으로 내비게이션 바, 메뉴 또는 대화 상자와 같은 중립적인 색상의 구성 요소는 특정한 Surface 컨테이너 역할에 매핑되지만, 이러한 역할은 제작자가 사용자의 필요에 맞게 다시 매핑할 수 있습니다.
컴포넌트에 적용되는 기본 서피스 컨테이너 역할입니다:
- Surface container low
- Surface container
- Surface container high
- Surface container highest
Inverse colors(반전 색상)
역방향 역할은 컴포넌트에 선택적으로 적용되어 주변 UI의 색상과 반대되는 색상을 구현하여 대비 효과를 만듭니다.
- Inverse surface – 표면과 대비되는 요소의 배경 채우기
- Inverse on surface – Inverse surface에 대한 텍스트 및 아이콘
- Inverse primary – Inverse surface에 적용되는 텍스트 버튼과 같은 동작 가능 요소(Actionable elements)
1. Inverse surface for its background
2. Inverse on surface for its text
3. Inverse primary for its text button
Outline(윤곽선)
Surface에 대해 사용될 윤곽선 색상은 두 가지가 있습니다:
- Outline – 텍스트 필드 윤곽선과 같은 중요한 경계선
- Outline variant – 구분선과 같은 장식 요소
2. 구분선에 윤곽선 변형을 사용하는 목록 항목
대신 윤곽선 변형(outline variant)을 사용하세요.
Add-on color roles(추가 기능 색상 역할)
대부분의 제품에는 이러한 애드온 색상 역할을 사용할 필요가 없습니다. 그러나 일부 제품에는 애드온 역할이 제공하는 더 큰 유연성과 제어 기능이 필요합니다. 제품에 애드온 역할을 사용해야 하는지 확실하지 않은 경우에는 사용하지 않아도 되며 무시해도 됩니다.
Fixed accent colors(고정 액센트 색상)
Primary fixed, secondary fixed, and tertiary fixed는 surface에 사용되는 채우기 색상입니다. 이러한 색상은 테마 간에 톤이 바뀌는 일반 컨테이너 색상과 달리 라이트 테마 및 다크 테마에서 동일한 톤을 유지합니다. 이러한 고정 동작이 필요한 상황에서는 동등한(equivalent) 컨테이너 역할 대신 고정 색상 역할을 사용할 수 있습니다.
The primary fixed dim, secondary fixed dim, and tertiary fixed dim(1차 고정 어둡기, 2차 고정 어둡기 및 3차 고정 어둡기) 역할은 동등한 고정 색상에 비해 더 강하고 강조된 톤을 제공합니다. 더 진한 색상이 필요하지만 동일한 고정 동작이 필요한 경우에 사용할 수 있습니다.
테마 간에 색상이 동일하게 유지되는 점에 유의하세요.
1. FAB 컨테이너 색상에 대한 Primary fixed
2. 아이콘 버튼 컨테이너에 대한 Primary fixed dim
On fixed 액센트 컬러
On fixed colors는 상응하는 Fixed color 위에 있는 텍스트 및 아이콘에 사용됩니다. 예를 들어, on primary fixed는 primary fixed 색상과 대비되는 텍스트 및 아이콘에 사용됩니다. 동등한 secondary and tertiary 색상에도 동일한 사용법이 적용됩니다.
On fixed variant 색상은 상응하는 Fixed color에 비해 강조를 낮출 필요가 있는 텍스트 및 아이콘에 사용됩니다. 예를 들어, on primary fixed variant는 primary fixed 색상과 대비하여 강조도가 낮은 텍스트 및 아이콘에 사용됩니다. 동등한 secondary and tertiary 색상에도 동일한 사용법이 적용됩니다.
Bright and dim 표면 역할
두 가지 애드온 surface 역할이 있습니다:
- Surface dim – 라이트 및 다크 테마에서 가장 어두운 표면 색상
- Surface bright – 라이트 및 다크 테마에서 가장 밝은 표면 색상
디폴트 surface 색상은 라이트 테마와 다크 테마 간에 자동으로 반전되지만(라이트 테마에서는 밝은 색상이 다크 테마에서는 어두운 색상으로 반전됨), surface bright 및 surface dim 색상은 약간 다른 방식으로 반전됩니다. 더 정확하게는 라이트 테마와 다크 테마 모두에서 상대적인 밝기를 유지합니다.
예를 들어 디폴트 surface 역할을 사용하는 인터페이스에서 매핑된 영역은 라이트 테마에서는 가장 밝고 다크 테마에서는 가장 어둡습니다. surface bright 역할을 사용하는 인터페이스에서는 매핑된 영역이 라이트 테마 및 다크 테마 모두에서 가장 밝습니다.
1. Surface
2. Surface container
1. Surface
2. Surface container
1. Surface bright
2. Surface container
1. Surface bright
2. Surface container
2. Chat window with surface bright background