요즘IT
위시켓
최근 검색어
전체 삭제
최근 검색어가 없습니다.

더욱 뛰어난 모달윈도우를 디자인할 수 있는 9가지의 간단한 원칙

회원가입을 하면 원하는 문장을
저장할 수 있어요!

다음

회원가입을 하면
성장에 도움이 되는 콘텐츠를
스크랩할 수 있어요!

확인

디자인

모달윈도우(팝업)를 디자인할 때 생각할 9가지 원칙

년차,
어떤 스킬
,
어떤 직무
독자들이 봤을까요?
어떤 독자들이 봤는지 궁금하다면?
로그인

더욱 뛰어난 모달윈도우를 디자인할 수 있는 9가지의 간단한 원칙

 

본문은 위시켓과 번역가 전리오가 함께 만든 해외 콘텐츠 기반의 번역문으로, UX를 다루는 블로그 UX플래닛의 글을 번역했습니다. 필자 Nick Babich는 현업 소프트웨어 개발자인 동시에 블로그 ‘UX플래닛’을 운영하며 UX에 대한 인사이트들을 사람들에게 전하고 있습니다. 본문은 우리나라에서 ‘팝업’ 이라 불리는 모달윈도우(Modal indow)를 살피며 그것의 정의와 역할, 그리고 디자인 방법론을 해설합니다.

 

모달윈도우란 메인 화면의 위에 팝업처럼 떠 있는 창을 말합니다. 영어에서 모달(modal)은 명사인 모드(mode)의 형용사인데, 이 기능을 사용하면 메인 화면이 뒤쪽에 보이기만 하고 사용할 수는 없는 ‘모드’를 만들기 때문입니다. 이런 상태에서는 사용자들이 모달윈도우에서 어떤 동작을 해야만 다시 메인 화면으로 돌아갈 수 있습니다.

 

디자이너들은 사용자들의 눈길을 끌기 위해서 이러한 모달윈도우를 사용합니다. 따라서 모달윈도우에 있는 정보나 행동들은 순전히 사용자의 관심을 사로잡기 위한 것입니다. 이번 글에서는 모달윈도우를 좀 더 잘 디자인할 수 있는 몇 가지의 간단한 원칙들을 살펴보겠습니다.


1. 오류 메시지나 대기중, 또는 작업 성공을 알리기 위한 용도로 사용하지 않는다

디자이너들은 가끔 오류나 로딩 메시지, 또는 작업 성공을 알리기 위해서 모달윈도우를 사용하기도 합니다. 그러나 모달윈도우는 이러한 용도에는 그다지 효과적이지 않습니다. 왜냐하면 모달윈도우는 메인 화면의 동작을 아예 차단하기 때문입니다.

모달윈도우를 사용해서 에러 메시지를 보여주는 사례.
이미지 출처: 앵귤러스크립트(angularscript)
  • 에러: 오류 발생을 알려주는 방법은 그 맥락 안에서 함께 보여주거나, 아니면 별도의 창으로 보여주는 방식이 있습니다. 첫 번째 방식은 사용자들이 텍스트를 입력하는 양식에서 사용하면 좋은데, 왜냐하면 사람들이 그 메시지를 읽으면 무슨 상황인지를 금세 파악할 수 있기 때문입니다. 반면에 두 번째 방식은 인터넷 연결이 끊어진 것과 같은 좀 더 일반적인 에러를 보여주는데 사용하면 좋습니다.
사용자가 입력한 내용의 유효성 검사의 결과를 같은 위치에서 알려주는 모습.
이미지 출처: 폴 맥그리거(Paul Macgregor)

 

  • 로딩: 로딩 시간이 오래 걸리는 경우에는 “로딩중”이라는 메시지를 로딩 윈도우에서 보여주는 것이 일반적입니다. 이런 경우에 모달윈도우를 사용하면 좋은 이유는, 사용자들이 메인 화면에서 다른 작업을 하지 못하게 만들 수 있기 때문입니다. 그러나 더욱 우아한 방법이 없는 것은 아닙니다. 예를 들어서, 로딩 작업을 알리는 버튼 안에 진행 상태를 추가해서 보여주면 더욱 근사해 보일 수 있습니다. 이렇게 하면 사용자들에게 기다려야 한다는 사실을 알려주는 동시에, 버튼을 다시 한 번 더 클릭하는 등의 행동을 막을 수 있습니다.
로딩 작업을 알리는 버튼에서 진행 상태까지 보여주는 모습.
이미지: 드리블(Dribbble)

 

  • 작업 성공: 이런 메시지는 같은 위치에서 보여주거나, 아예 별도의 페이지로 넘어가서 보여주는 것이 훨씬 더 좋습니다.

경고 메시지 용도로 모달윈도우를 사용하는 것에 대해서 한 마디: 사용자가 심각할 수도 있는 행동을 하려 하거나, 또는 되돌리기 힘들거나 복구가 불가능한 선택을 하려고 할 때는 모달윈도우를 사용할 수도 있습니다.

되돌릴 수 없는 선택에 대해서는 모달윈도우를 이용해서 그 메시지를 전달할 수도 있습니다.
이미지 출처: 테일윈드UI(tailwindui)

 

 

2. 모달윈도우는 주의해서 사용해야 한다

일반적으로 모달윈도우에는 두 가지 유형이 있습니다. 하나는 사용자에 의해 유발되는 것이고, 다른 하나는 시스템에 의해서 유발되는 것입니다.

  • 사용자에 의해 유발되는 모달윈도우는 사용자가 어떤 버튼을 누른다든가 할 때 실행되는 것입니다. 그래서 사용자들은 그 윈도우가 왜 나타났는지를 알고 있습니다.
  • 시스템에 의해 유발되는 모달윈도우는 사용자가 하고 있던 작업을 방해합니다. 이게 바로 이런 유형의 모달윈도우가 가진 커다란 문제점인데, 사용자들이 무엇을 하고 있었든 간에 모달윈도우가 모든 것을 중단시킨다는 것입니다. 그리고 사용자들은 그 윈도우가 왜 나타났는지를 잘 모를 수도 있습니다.

 

인터넷에서 디자이너들은 주로 프로모션의 목적을 위해서 시스템적인 모달윈도우를 사용하는 경우가 많습니다. 이런 모달윈도우는 사용자들을 방해하고, 특정한 행동을 하게끔 강제합니다. 이처럼 원치 않았던 모달윈도우는 사용자들에게 좋지 못한 인상을 남기는 경우가 많습니다. 그래서 사람들은 이런 메시지가 나타나면 그 즉시 닫기 버튼을 누르곤 합니다. 사용자들은 이런 윈도우가 성가시다는 것을 알고 있기 때문에, 대부분은 그냥 닫기 버튼을 누르는 것입니다.

원치 않았던 모달윈도우가 나타나서 가입을 권유하고 있는 모습.
이미지 출처: 롤링스톤(RollingStone)

가장 안전한 방식은 사용자의 행동과 직접적으로 관련된 경우나 정말로 긴급한 메시지를 보여줄 때만 사용하는 것입니다. 그 외의 모든 경우에서는, 다른 방식으로 (심지어 기존의 페이지 내에서도) 사용자들에게 메시지를 전달할 수 있습니다. 이렇게 하면 사용자들은 자신들이 보고 싶은 콘텐츠를 자유롭게 선택하거나 원하는 행동을 마음껏 할 수 있습니다.

 

 

3. 사용자들에게 해야 할 일을 알려주는 용도로 활용한다

모달윈도우가 갑자기 나타난다면, 특히 시스템적으로 실행된 모달윈도우라면, 사람들은 그 창이 나타난 이유를 궁금해할 것입니다. 따라서 모달윈도우에서 사용자들에게 그 창이 나타난 이유를 분명하게 알려줘야 합니다. 즉, 사람들이 충분히 관심을 갖고 그 텍스트를 읽어야 하며, 그들에게 전달하고자 하는 메시지가 무엇이며 어떤 행동을 취할 수 있는지를 사람들이 이해할 수 있어야 합니다.

 

이 때는 모달윈도우의 창 제목과 기본 확인 버튼의 텍스트를 동일하게 설정하는 것이 좋습니다. 그렇게 하면 사람들이 상황을 좀 더 쉽게 파악할 수 있기 때문입니다. 그러한 버튼에서는 사용자가 그것을 클릭했을 때 어떤 결과가 나타날 지를 명확하게 알 수 있는 라벨을 사용하는 것이 좋습니다. 예를 들자면, 사용자들이 파일을 삭제하고자 할 때, 그것을 다시 한번 더 물어본다고 가정해 보겠습니다. 그럴 때는 “저장 공간을 비우시겠습니까?”라는 질문과 “네”와 “아니오”라는 버튼을 제시하는 것보다는, “선택하신 파일을 삭제하시겠습니까?”라는 질문과 “삭제하기”와 “취소하기”라는 버튼을 제시하는 것이 훨씬 더 낫습니다.

 

 

4. 모달윈도우 안에서의 콘텐츠와 기능적인 요소들에 우선순위를 두어야 한다

모달윈도우 안에서 스크롤을 내려야 하는 상황은 피하는 것이 좋습니다. 스크롤은 위아래 방향으로 긴 페이지에서는 괜찮지만, 모달윈도우에서는 필수적인 정보와 필요한 버튼만 포함하고 있어야 합니다. 그래서 만약 모달윈도우 안에서 많은 양의 콘텐츠를 추가하고 있다면, 잠시 멈추고 다시 한번 생각해 보시기 바랍니다. 대부분은 많이 쓰이는 방식을 사람들도 좀 더 자연스럽게 받아 들입니다.

  • 이상적이라면, 모달윈도우 안의 텍스트는 1-2개의 문장으로 끝내는 게 좋습니다.
  • 동일한 모달윈도우 안에서, 2가지 이상의 행동을 요구해서는 안 됩니다. “자세히 살펴보기”와 같은 추가적인 선택을 제시한다면, 사람들이 그곳에서 요구하는 작업을 완료하지 못할 가능성이 커집니다. 왜냐하면 사용자들이 현재의 대화 창에서 빠져나가야 하기 때문입니다.

 

 

5. 닫기 기능을 잘 보이게 만든다

사용자들은 자신이 원할 때 언제든 모달윈도우를 빠져나갈 수 있어야 합니다. 따라서 사용자들에게 모달윈도우를 닫을 수 있는 기능을 제공해야 합니다. 많이 쓰이는 몇 가지 방식은 다음과 같습니다.

  • 윈도우의 오른쪽 위에 ‘닫기’나 ‘X’ 버튼을 잘 보이게 추가한다.
  • 모달윈도우의 아래쪽에 ‘닫기’나 ‘취소하기’ 버튼을 잘 보이게 추가한다.
  • 모달윈도우의 바깥쪽을 클릭하거나 터치하면 윈도우가 사라지게 만든다.

 

 

6. 창의 크기를 적당하게 만든다

모달윈도우의 사이즈가 너무 크면 안 됩니다. 그리고 화면 전체를 가려도 안 됩니다. 이상적이라면 화면 전체의 25% 이상을 가리지 않는 것이 좋습니다. 만약 한 개의 윈도우 안에 콘텐츠를 넣을 수 없어 스크롤 바를 사용했다면, 모달윈도우가 아니라 아예 별도의 페이지를 만드는 게 더 나을 수도 있습니다.

 

 

7. 모달윈도우에 시선이 집중되어야 한다

사용자들에게 모달윈도우를 확실히 눈에 띄게 하는 대표적인 방법은 다음과 같습니다.

  • 사용자들이 시선이 위치한 곳에서 모달윈도우를 직접 보여준다. 모달윈도우가 시야에 들어오지 않는다면, 사용자들은 그걸 찾기 위해서 스크롤을 내려야 할 수도 있습니다. 이런 경우의 문제라면 사용자들이 모달윈도우가 있다는 사실을 알아 차리지 못해서, 굳이 스크롤을 해야 하는 이유나 필요성을 느끼지 못할 수도 있다는 것입니다. 웹 페이지를 반응형으로 만들어야 하는 또 하나의 이유도 바로 여기에 있습니다.
  • 모달윈도우를 배경의 메인 페이지와 시각적으로 확실하게 구분되게 만들어야 한다. 배경의 메인 화면을 어둡게 만들면, 메인 페이지 위에 모달윈도우가 나타났다는 사실을 사용자들이 좀 더 쉽게 인식할 수 있습니다.

 

 

8. 데스크톱 사용자들이 키보드를 이용해서 모달윈도우의 콘텐츠로 이동할 수 있게 한다

데스크톱 환경에서 모달윈도우가 나타나면, 키보드의 포커스(focus)[1]도 모달윈도우로 이동해야 합니다. 사용자들은 키보드를 이용해서 모달윈도우의 기능을 컨트롤 할 수 있어야 합니다.

 

대표적으로는, ESC 버튼을 누르면 모달윈도우가 종료되도록 해야 합니다. 만약에 데스크톱을 이용하는 사용자들은 어떤 창이 갑자기 나타나더라도, 자신들에게 익숙한 ESC 버튼을 눌러서 이전의 페이지로 돌아가고 싶어할 것이기 때문입니다.

 

 

9. 모달윈도우를 중첩해서 사용하지 않는다

모달윈도우에서 또 다른 모달윈도우가 나타나는 식으로 디자인을 해서는 안 됩니다. 시각적으로 복잡해질 뿐입니다.

중첩해서 사용하면 UX가 나빠질 뿐입니다.
이미지 출처: 드루팔(Drupal)
 

[1] 키보드로부터 입력을 받기 위해서 활성화되는 부분

좋아요

댓글

공유

공유

작가
414
명 알림 받는 중

작가 홈

작가
414
명 알림 받는 중
요즘 해외 개발자들은 어떻게 일할까요? 기획자나 디자이너는요? 그래서 준비했습니다. 읽어볼만한 해외 소식들을 번역해 전합니다. We are the world.

좋아요

댓글

스크랩

공유

공유

지금 회원가입하고,
요즘IT가 PICK한 뉴스레터를 받아보세요!

회원가입하기
요즘IT의 멤버가 되어주세요! 요즘IT의 멤버가 되어주세요!
요즘IT의 멤버가 되어주세요!
모든 콘텐츠를 편하게 보고 스크랩해요.
모든 콘텐츠를 편하게 보고 스크랩 하기
매주 PICK한 콘텐츠를 뉴스레터로 받아요.
매주 PICK한 콘텐츠를 뉴스레터로 받기
로그인하고 무료로 사용하기