Dialog

Dialog는 페이지 위에 창을 띄워 사용자를 중요한 정보에 집중시키거나, 특정 작업을 수행하도록 강제하는 컴포넌트입니다.

Anatomy

Dialog anatomy
  1. Backdrop
  2. Title
  3. Description — Optional
  4. Content — Optional
  5. Assistive button — Optional
  6. Close button
  7. Action button

Examples

커스텀이 필요할 때 사용하세요

원하는 데이터를 충분히 표현하기 어렵다면 Custom dialog를 사용하세요.

작업과 관련된 정보를 제공할 때 사용하세요 (Assistive button)

주요 동작(Action button) 이외에 사용자의 행동을 보조하는 기능을 제공합니다. 닫기 버튼으로 사용하지 않습니다.

작업과 관련된 정보를 제공할 때 사용하세요 (Scroll)

작업과 관련된 정보를 제공합니다. 정해진 높이(Max-height)를 넘길 경우 스크롤을 제공합니다.

사용자의 정보 입력이 필요할 경우 사용하세요

페이지를 벗어나지 않고 사용자로부터 입력을 받습니다. 다음 단계를 진행하기 위해 사용자의 입력 값이 필수적으로 필요한 경우 사용합니다.

Best practices

Scroll

Scroll 사용 예시
콘텐츠가 길어질 경우 스크롤을 사용하여 콘텐츠를 구성합니다.
가로 스크롤 지양
가로 스크롤을 사용하지 마세요. 레이아웃을 조정하거나, 더 큰 사이즈의 Dialog를 사용하세요.

Close button

닫기 버튼 하나
닫기 버튼은 하나만 제공합니다.
닫기 버튼 중복 배치
[X] 버튼과 [닫기] 버튼을 중복 배치하지 마세요.

Button label

예측 가능한 레이블
버튼을 눌렀을 때 어떤 결과가 나오는지 사용자가 예상할 수 있게 레이블을 작성하세요.
모호한 레이블
결과와 관련 없거나 '확인' 같은 모호한 레이블을 사용하지 마세요.

Title

트리거와 일치하는 타이틀
[새 그룹 만들기] 버튼을 눌러 띄워진 Dialog 타이틀은 [새 그룹 만들기]로 작성합니다.
트리거와 다른 타이틀
트리거가 된 버튼의 레이블과 다른 타이틀을 사용하지 마세요. 사용자가 진행 맥락을 혼동할 수 있습니다.

Patterns

Dialog에서 발생한 오류는 인라인 메시지를 사용해 알리세요

Dialog에서 발생한 오류는 인라인 메시지로 알립니다. Alert dialog나 Toast를 사용하지 마세요.

인라인 오류 메시지 패턴

Guidelines

Height

Dialog의 최대 높이(Max-height)는 전체 화면 높이의 80%로 설정됩니다.

Dialog 최대 높이

Close behavior

  • Close button: Dialog는 헤더의 Close 버튼으로 닫을 수 있습니다.
  • Backdrop 클릭 / ESC: 배경을 클릭하거나 키보드 ESC를 눌러 Dialog를 닫을 수 있습니다.
Dialog 닫기 동작

Scroll behavior

Dialog 스크롤 동작