Material Design 3 – 색상 역할(번역)

2025년 2월 28일, 금요일

Color roles – Material Design 3

Primary(주조색), Secondary(2차), Tertiary(3차), Error, Surface(표면), Outline(윤곽선)의 6가지 그룹으로 구성된 26가지 표준 색상 역할이 있습니다.

색상 역할이란 무엇인가요?

색상 역할은 paint by number 캔버스의 ‘숫자’와 같습니다. 색 역할은 UI의 요소와 어떤 색을 어디에 배치할지를 연결하는 결합 조직입니다.

  • 색상 역할은 머티리얼 컴포넌트(구성요소)에 매핑됩니다.
    정적 베이스라인 구성표를 사용하든 동적 색상을 사용하든 이러한 색상 역할을 사용하게 됩니다. 제품에 사용자 지정 컴포넌트가 포함되어 있는 경우 이 색상 역할 세트에 적절하게 매핑되어야 합니다.
  • 색상 역할은 접근성을 보장합니다.
    컬러 시스템은 접근 가능한 색상 페어링을 기반으로 합니다. 이러한 색상 쌍은 접근 가능한 최소 3:1 대비를 제공합니다.
  • 색상 역할은 토큰화됩니다.
    역할은 토큰을 통해 디자인과 코드에서 구현됩니다. 디자인 토큰은 디자인 시스템의 시각적 스타일의 일부인 재사용 가능한 작은 디자인 결정을 나타냅니다.

Example color swatches for all 45 color roles including Primary, Secondary, Tertiary, Error, Surfaces, Inverse roles, Scrim and Shadow roles.
Surface(표면) 색상 및 수정된 액센트 색상에 대한 선택적 추가 역할(optional add-on roles)을 포함하는, 모든 머티리얼 색상 역할의 다이어그램

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)은 윤곽선 색의 덜 강조된 버전입니다.

색상 페어링 및 레이어링

앱에서 접근 가능한 시각적 대비를 보장하기 위해, 다음 섹션에서 설명하는 의도된 페어링 또는 레이어링 순서대로만 색상을 적용하세요.

색상을 부적절하게 조합하면 시각적 접근성에 필요한 대비가 깨질 수 있으며, 특히 사용자 제어 대비와 같은 동적 색상 기능을 통해 색상을 조정하는 경우 더욱 그렇습니다.

Pair of buttons shown at three different contrast levels. At every level, the text on the button is legible because the color roles are properly applied to the buttons.
✅ 예상되는 시각적 결과와 접근성을 보장하기 위해 의도한 대로 색상 역할을 페어링하고 레이어링합니다. 이 예에서는 (1) primary, (2) on primary, (3) secondary container, and (4) on secondary container로 매핑된 두 개의 버튼이 대비 수준이 변경되어도 가독성을 유지합니다.
Pair of buttons shown at 3 different contrast levels. The text on the button becomes illegible because the color roles are improperly applied to the buttons.
❌ 부적절한 색상 매핑은 의도하지 않은 시각적 결과를 초래하고 접근성을 떨어뜨릴 수 있습니다. 이 예에서 (1) primary, (2) primary container, (3) secondary container, and (4) on surface로 매핑된 두 개의 버튼은 대비 수준이 변경됨에 따라 읽기 어렵게 됩니다.

액센트 컬러 역할

강조 색상 역할에는 1차, 2차, 3차가 있습니다. 중요도와 필요한 강조도에 따라 UI의 요소에 할당합니다. 시각적 효과를 위해 색상 역할을 변경할 때는 주의하세요.

  • Primary roles 1차 역할은 새 메시지를 시작하는 FAB(Floating Action Button)과 같이 가장 강조할 필요가 있는 중요한 동작 및 요소에 사용됩니다.
  • Secondary roles 2차 역할은 내비게이션 아이콘의 선택된 상태나 해제 버튼과 같이 즉각적인 주의가 필요하지 않고 강조할 필요가 없는 요소에 사용됩니다.
  • Tertiary roles 3차 역할은 배지나 알림과 같이 특별히 강조해야 하지만 즉각적인 주의가 필요하지 않은 작은 요소에 사용됩니다.
A mail app showing a mix of primary, secondary, and tertiary accent colors used across the screen.
1. Primary 색상은 별표 표시된 메시지 및 새 메시지 시작을 위한 FAB와 같이 가장 중요한 요소에 사용됩니다.
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에 대비되는 텍스트 및 아이콘
4 color swatches: primary, on primary, primary container and on primary container.
Primary 색상 역할에는 primaryprimary container와 각각의 “On” 색상이 포함됩니다.
Primary color used for filled button, and "on primary" color used for the text within that button.
1. On primary
2. Primary
"Primary container" color used for FAB and "on primary container" color used for the text and icon within.
1. On primary container
2. Primary container

Secondary

필터 칩과 같이 UI에서 눈에 잘 띄지 않는 구성 요소에는 secondary 역할을 사용합니다.

Secondary 역할에는 네 가지가 있습니다:

  • Secondary – Surface(표면)에 대한 덜 두드러지는 채우기, 텍스트 및 아이콘
  • On secondary – Secondary에 대한 텍스트 및 아이콘
  • Secondary container – 색조(tonal) 버튼과 같은 열성(recessive)구성 요소에 대해, 표면 대비 덜 눈에 띄는 채우기 색상
  • On secondary container – secondary container에 대한 텍스트 및 아이콘
4 color swatches: secondary, on secondary, secondary container, and on secondary container.
Secondary color roles include secondary and secondary container, with their respective “On” colors
An icon button using "secondary container" color, and an icon using "on secondary color."
1. Icon: On secondary container
2. Button: Secondary container

Tertiary

1차 색상과 2차 색상의 균형을 맞추거나 입력 필드와 같은 요소에 주의를 집중시키기 위한 대조적인 악센트에 3차 역할을 사용합니다.

Tertiary 역할에는 네 가지가 있습니다:

  • Tertiary – 표면에 대한 보완적인 채우기, 텍스트 및 아이콘
  • On tertiary – Tertiary에 대한 텍스트 및 아이콘
  • Tertiary container – 입력 필드와 같은 컴포넌트의 경우 표면에 대한 보완적인 컨테이너 색상
  • On tertiary container – Tertiary container에 대한 텍스트 및 아이콘
4 color swatches: tertiary, on tertiary, tertiary container, and on tertiary container.
Tertiary color roles include tertiary and tertiary container, with their respective “On” colors

3차 색상 역할은 디자이너의 재량에 따라 적용할 수 있습니다. 보다 폭넓은 색상 표현을 지원하기 위한 것입니다.

A selected element using Tertiary Container as a background color and On Tertiary Container for text.
1. On tertiary container
2. Tertiary container

Error

에러 역할을 사용하여 텍스트 필드에 잘못된 비밀번호를 입력하는 등의 오류 상태를 전달하세요.

에러 역할에는 네 가지가 있습니다:

  • Error – 채우기, 아이콘 및 텍스트의 표면에 주의를 끄는 색상으로 긴급함을 나타냅니다.
  • On error – 오류에 대한 텍스트 및 아이콘
  • Error container – 표면에 대비되는 주의를 끄는 채우기 색상
  • On error container – Error container에 대한 텍스트 및 아이콘

에러는 정적 색상의 예입니다(동적 색상 구성표에서도 변경되지 않음). 오류 색 역할은 모든 동적 색상 구성표에서 기본적으로 정적으로 만들어집니다.

4 color swatches: Error, On error, Error container and On error container roles.
Error color roles include error and error container with their respective “On” colors.

Surface

보다 중립적인 배경(neutral backgrounds) 그리고 카드, 시트 및 대화 상자와 같은 구성 요소를 위한 컨테이너 색상에는 Surface 역할을 사용합니다.

Surface 역할에는 세 가지가 있습니다:

  • Surface – 배경의 기본 색상
  • On surface – 모든 surface 색상에 대한 텍스트 및 아이콘
  • On surface variant – 모든 표면 색상에 대한 텍스트 및 아이콘의 강조도가 낮은 색상
3 color swatches: Surface, On surface and On surface variant.
Surface and on surface roles in light theme

또한 강조 수준에 따라 이름이 지정된 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 역할 조합은 배경 영역에는 서피스를, 내비게이션 영역에는 서피스 컨테이너를 사용합니다.

Email app using Surface for the main background color and Surface Container for the navigation bar background
1. Surface
2. Surface container

모든 색상 매핑, 특히 surface 색상은 모든 윈도우 사이즈 클래스에 걸쳐 레이아웃 영역에서 동일하게 유지되어야 합니다. 예를 들어 본문 영역은 surface 색상을 사용하고 내비게이션 영역은 모바일과 태블릿 모두에서 surface container 색상을 사용합니다.

Mobile and tablet screens both using Surface for main background and surface container for navigation background.
1. Surface
2. Surface container

필요한 계층 구조, 기능 영역 및 디자인 로직에 따라 색상이 일관되게 적용되는 한 더 큰 창 클래스 크기에서 애드온(추가) 표면 색상을 사용할 수 있습니다.

이 예제에서는 본문 및 탐색 영역이 모든 창 크기 클래스(각각 SurfaceSurface 컨테이너)에서 동일한 색상 역할을 하며, 더 큰 크기에서는 다른 Surface 컨테이너 색상이 추가됩니다.

기본적으로 내비게이션 바, 메뉴 또는 대화 상자와 같은 중립적인 색상의 구성 요소는 특정한 Surface 컨테이너 역할에 매핑되지만, 이러한 역할은 제작자가 사용자의 필요에 맞게 다시 매핑할 수 있습니다.

Surface container low applied to an elevated button and card, surface container applied to the top and bottom bar, surface container high applied to the FAB and basic dialog, surface container highest applied to an input label and off switch.
Default surface container roles applied to components:Surface container lowSurface container Surface container highSurface container highest

컴포넌트에 적용되는 기본 서피스 컨테이너 역할입니다:

  1. Surface container low
  2. Surface container
  3. Surface container high
  4. Surface container highest

Inverse colors(반전 색상)

역방향 역할은 컴포넌트에 선택적으로 적용되어 주변 UI의 색상과 반대되는 색상을 구현하여 대비 효과를 만듭니다.

  • Inverse surface – 표면과 대비되는 요소의 배경 채우기
  • Inverse on surface – Inverse surface에 대한 텍스트 및 아이콘
  • Inverse primary – Inverse surface에 적용되는 텍스트 버튼과 같은 동작 가능 요소(Actionable elements)
3 color swatches: Inverse surface, inverse on surface and inverse primary roles.
Inverse surface, inverse on surface, and inverse primary 역할 in the 색상 구성표, 라이트 테마에 표시됨
Snackbar component using inverse surface for its background, inverse on surface for its text and inverse primary of its text button, shown in light theme
A snackbar(스낵바) which uses:
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 color swatches: Outline and outline variant
Outline and outline variant roles in the color scheme, shown in light theme
Diagram comparing used of outline and outline variant.
1. 컨테이너 테두리에 윤곽선을 사용하는 텍스트 필드
2. 구분선에 윤곽선 변형을 사용하는 목록 항목
Outline color incorrectly used for dividers
❌ 구분선(dividers)에는 대비 요구 사항이 다르므로 윤곽선 색상을 사용하지 마세요.
대신 윤곽선 변형(outline variant)을 사용하세요.
Outline color incorrectly used for cards.
❌ 카드와 같이 여러 요소가 포함된 컴포넌트에는 윤곽선 색상을 사용하지 마세요. 대신 윤곽선 변형을 사용하세요.
Outline variant color incorrectly used for input and filter chips.
윤곽선 변형 색상을 사용하여 시각적 계층을 만들거나 대상의 시각적 경계를 정의하지 마세요. 대신 윤곽선 색상 또는 표면 색상과 3:1 대비를 제공하는 다른 색상을 사용합니다.
Outline variant incorrectly color used for chips.
❌ 칩과 같이 군집된 요소(clustered elements)나 서로 가까이 있는 다른 UI 요소에는 윤곽선 변형 색상을 사용하지 마세요. 대신 윤곽선 또는 표면 색상과 3:1 대비를 제공하는 다른 색상을 사용하세요.
⚠️ 칩 및 버튼과 같은 타겟의 테두리에는 해당 타겟 내부에 시각적 대비를 제공하는 요소가 포함되어 있는 경우 윤곽선 변형 색상을 사용할 수 있습니다. 이 칩 및 버튼 예시에서는 대상 내부의 아이콘과 텍스트가 4.5:1 대비를 충족합니다.

Add-on color roles(추가 기능 색상 역할)

대부분의 제품에는 이러한 애드온 색상 역할을 사용할 필요가 없습니다. 그러나 일부 제품에는 애드온 역할이 제공하는 더 큰 유연성과 제어 기능이 필요합니다. 제품에 애드온 역할을 사용해야 하는지 확실하지 않은 경우에는 사용하지 않아도 되며 무시해도 됩니다.

Fixed accent colors(고정 액센트 색상)

Primary fixed, secondary fixed, and tertiary fixed는 surface에 사용되는 채우기 색상입니다. 이러한 색상은 테마 간에 톤이 바뀌는 일반 컨테이너 색상과 달리 라이트 테마 및 다크 테마에서 동일한 톤을 유지합니다. 이러한 고정 동작이 필요한 상황에서는 동등한(equivalent) 컨테이너 역할 대신 고정 색상 역할을 사용할 수 있습니다.

The primary fixed dimsecondary fixed dim, and tertiary fixed dim(1차 고정 어둡기, 2차 고정 어둡기 및 3차 고정 어둡기) 역할은 동등한 고정 색상에 비해 더 강하고 강조된 톤을 제공합니다. 더 진한 색상이 필요하지만 동일한 고정 동작이 필요한 경우에 사용할 수 있습니다.

6 color swatches: Primary, secondary and tertiary fixed swatches, along with their darker Dim counterparts, shown in both light and dark theme.
라이트 및 다크 테마 모두에 표시되는 primary, secondary, tertiary 색상 그룹에 대한 fixed and fixed dim 색상 역할.
테마 간에 색상이 동일하게 유지되는 점에 유의하세요.
FAB in light and dark theme, using the primary fixed role for its container fill color.
컨테이너 채우기 색상에 primary fixed (1)을 사용하는 FAB(플로팅 액션 버튼), 라이트 및 다크 테마에서 보여지는. 테마 간에 컨테이너 색상이 동일하게 유지되는 점에 유의하세요.
FAB in light and dark theme, using the primary container role for its container fill color.
비교를 위해 컨테이너 채우기 색상으로 primary container (2)를 사용하는 FAB를 라이트 및 다크 테마로 표시했습니다. 테마 간에 컨테이너 색상이 어떻게 톤이 바뀌는지 주목하세요.
2 email app screens using primary fixed and primary fixed dim.
고정 및 고정 어두운 색상의 용례입니다:
1. FAB 컨테이너 색상에 대한 Primary fixed
2. 아이콘 버튼 컨테이너에 대한 Primary fixed dim
Permissions screen with Surface used for the background and Primary Fixed incorrectly used for the button fill.
❌ 고정 색상은 밝거나 어두운 테마에 따라 변경되지 않으므로 대비 문제를 일으킬 수 있습니다. 대비가 필요한 곳에서는 사용하지 마세요.




Permissions screen with Surface used for the background and Primary correctly used for the button fill.
✅ 대비가 필요한 곳에는 primary, secondary, and tertiary 역할을 강조 색상으로 사용하세요.

On fixed 액센트 컬러

On fixed colors는 상응하는 Fixed color 위에 있는 텍스트 및 아이콘에 사용됩니다. 예를 들어, on primary fixedprimary fixed 색상과 대비되는 텍스트 및 아이콘에 사용됩니다. 동등한 secondary and tertiary 색상에도 동일한 사용법이 적용됩니다.

On fixed variant 색상은 상응하는 Fixed color에 비해 강조를 낮출 필요가 있는 텍스트 및 아이콘에 사용됩니다. 예를 들어, on primary fixed variantprimary fixed 색상과 대비하여 강조도가 낮은 텍스트 및 아이콘에 사용됩니다. 동등한 secondary and tertiary 색상에도 동일한 사용법이 적용됩니다.

6 color swatches for on fixed and on fixed variant
Primary, secondarytertiary 액센트 그룹에 대한 on fixedon fixed variant 색상 역할, 라이트 및 다크 테마 모두에 표시됨.
Banner in a news app using on primary fixed variant and on primary fixed
(1) 강조되지 않은 텍스트에 ‘on primary fixed variant‘을 사용하고 (2) 강조된 텍스트에 ‘on primary fixed‘을 사용하는 사용자 정의 배너입니다.

Bright and dim 표면 역할

두 가지 애드온 surface 역할이 있습니다:

  • Surface dim – 라이트 및 다크 테마에서 가장 어두운 표면 색상
  • Surface bright – 라이트 및 다크 테마에서 가장 밝은 표면 색상
3 color swatches: Surface dim, surface, and surface bright
Surface dim, surface, and surface bright in light theme
3 color swatches: Surface dim, surface, and surface bright
Surface dim, surface, and surface bright in dark theme

디폴트 surface 색상은 라이트 테마와 다크 테마 간에 자동으로 반전되지만(라이트 테마에서는 밝은 색상이 다크 테마에서는 어두운 색상으로 반전됨), surface brightsurface dim 색상은 약간 다른 방식으로 반전됩니다. 더 정확하게는 라이트 테마와 다크 테마 모두에서 상대적인 밝기를 유지합니다.

예를 들어 디폴트 surface 역할을 사용하는 인터페이스에서 매핑된 영역은 라이트 테마에서는 가장 밝고 다크 테마에서는 가장 어둡습니다. surface bright 역할을 사용하는 인터페이스에서는 매핑된 영역이 라이트 테마 및 다크 테마 모두에서 가장 밝습니다.

UI with surface role applied to the body area and surface container applied to the navigation area, shown in light theme.
Light theme
1. Surface
2. Surface container
UI with surface role applied to the body area and surface container applied to the navigation area, shown in dark theme.
Dark theme
1. Surface
2. Surface container
UI with surface bright role applied to the body area and surface container applied to the navigation area, shown in light theme.
Light theme
1. Surface bright
2. Surface container
UI with surface bright role applied to the body area and surface container applied to the navigation area, shown in dark theme.
Dark theme
1. Surface bright
2. Surface container
Large screen chat UI. The surface dim role is applied to the left navigation rail and the surface bright role is applied to the chat window.
1. Navigation rail with surface dim background
2. Chat window with surface bright background
Last Updated: 2025년 02월 28일Categories: Art / DesignViews: 295

댓글 남기기