직접 살펴보는 예제

모바일 메뉴의 열림·닫힘·초점 복귀 확인

메뉴가 열리는 모습뿐 아니라 닫힌 상태의 키보드 이동도 확인하세요.

아래 내용은 구조를 설명하기 위해 만든 예제입니다. 실제 상품·고객 성과 자료가 아닙니다.

Public Notes

닫힘 · aria-expanded=false

상세페이지

상품 정보와 구매 전 조건을 확인하는 글을 모으는 예제 구간입니다.

웹디자인

메뉴·글자·본문 이동을 확인하는 예제 구간입니다.

마케팅

문장과 근거를 연결하는 예제 구간입니다.

모바일 메뉴의 과업 순서 예제에서 나눈 판단

닫힌 메뉴의 링크는 Tab으로 접근되지 않습니다. 열기 버튼을 누르면 목록이 표시되고 aria-expanded가 true로 바뀝니다. Escape를 누르면 목록을 숨기고 버튼에 초점을 돌려주는 동작을 이 예제에서 확인할 수 있습니다.

모바일 메뉴의 첫 질문은 어떻게 접을지가 아니라 무엇을 먼저 찾게 할지입니다

데스크톱 헤더의 로고, 여섯 개 메뉴, 검색, 언어 선택, 문의 버튼을 같은 순서로 세로 목록에 넣으면 구현은 빠르지만 모바일에서 링크가 길어지고 역할이 섞일 수 있습니다. 화면 폭이 줄어든 만큼 방문자가 자주 수행하는 과업과 콘텐츠 탐색, 운영 문서를 다시 구분해야 합니다. 이 글은 어떤 순서가 클릭을 늘린다고 주장하지 않고, 메뉴 항목의 목적·그룹·현재 위치·열림 상태·조작 경로가 분명한지 확인합니다.참고: U.S. Web Design System · Header

USWDS 헤더 지침은 짧고 명확한 링크 이름을 쓰고 조직 구조보다 사용자가 자주 찾는 과업과 정보에 맞춰 내비게이션을 구성하며 우선순위를 반영하라고 안내합니다. W3C의 Consistent Navigation 기준은 여러 페이지에 반복되는 내비게이션이 같은 상대 순서로 제공되어 예측 가능해야 한다고 설명합니다. 이 두 기준을 모바일 메뉴의 링크 목록을 만드는 출발점으로 삼되, 실제 우선순위는 사이트의 콘텐츠와 사용자 조사로 별도 확인해야 합니다.참고: U.S. Web Design System · Header · W3C Web Accessibility Initiative · Understanding Success Criterion 3.2.3: Consistent Navigation

모든 링크를 과업·콘텐츠·운영 정보로 분류하고 중복을 제거합니다

자체 예제는 실제 서비스와 무관한 ‘Public Notes 자료실’입니다. 데스크톱 헤더에는 홈, 최신 글, 세 개 주제, 소개, 작성 원칙, 광고 고지, 개인정보, 문의, 검색이 있다고 가정합니다. 모바일에서는 ‘최신 글 보기’와 ‘검색’을 주요 과업으로, 세 주제를 콘텐츠 탐색으로, 소개·원칙·고지·개인정보를 운영 문서로 묶습니다. 문의는 별도 행동으로 두되 같은 링크를 상단과 하단에 이유 없이 두 번 넣지 않습니다.

분류링크 예모바일 처리검수 질문
주요 과업최신 글·검색메뉴 상단에 짧게 표시첫 방문자가 목적을 예측할 수 있는가
콘텐츠 탐색상세페이지·웹디자인·마케팅하나의 목록으로 묶음카테고리 이름이 실제 글과 일치하는가
운영 문서소개·작성 원칙·광고 고지·개인정보별도 그룹에 배치콘텐츠 메뉴와 구분되는가
문의오류 정정·제작 문의한 개의 구체적 링크 또는 하위 선택같은 버튼이 중복되지 않는가
현재 위치열려 있는 주제aria-current와 시각 표시색상만으로 상태를 구분하지 않는가

분류표를 만들 때 링크 이름이 같은데 도착지가 다르거나, 이름은 다른데 같은 페이지로 가는 항목을 찾습니다. ‘정보’, ‘서비스’, ‘더보기’처럼 범위가 넓은 이름은 실제 도착 H1과 비교해 구체화합니다. 링크를 삭제하기 전에 푸터, 사이트맵, 검색 같은 다른 탐색 수단이 남는지도 확인합니다. 메뉴가 짧아졌다는 이유만으로 접근 경로 자체를 없애지 않습니다.참고: U.S. Web Design System · Header

일반 사이트 내비게이션은 복잡한 앱 메뉴보다 disclosure 버튼과 링크 목록으로 시작합니다

W3C ARIA Authoring Practices의 disclosure 패턴은 버튼이 콘텐츠를 펼치고 접으며 `aria-expanded`로 상태를 전달하고, 필요하면 `aria-controls`로 제어 대상을 가리키는 방식을 설명합니다. 별도의 disclosure navigation 예제는 일반적인 사이트 링크 모음에 복잡한 `menu` 역할을 사용하지 않습니다. `menu`와 `menubar`는 데스크톱 애플리케이션과 유사한 키보드 상호작용을 기대하게 하므로, 단순한 페이지 링크 목록에는 native `nav`, 목록, 링크, 버튼을 우선하는 편이 구현과 검수 범위를 분명하게 합니다.참고: W3C Web Accessibility Initiative · Disclosure (Show/Hide) Pattern · W3C Web Accessibility Initiative · Example Disclosure Navigation Menu

메뉴 열기·탐색·Escape 닫기·버튼 복귀 경로를 나눈 도식
헤더 역할과 메뉴 조작 관계를 설명하는 생성 이미지입니다. 실제 서비스 화면·방문자·탐색 성과·보조기술 시험 결과가 아닙니다. 본문에서 설계 예시와 작동 예제를 구분합니다.
구성 요소권장 역할상태 정보실패 예
열기 버튼native buttonaria-expanded와 aria-controls클릭 가능한 div와 상태 누락
링크 영역이름 있는 nav숨김·표시 상태의미 없는 menu 역할 남용
링크 묶음ul·li·a현재 페이지 aria-current텍스트 없는 아이콘 링크
닫기같은 토글 또는 명시적 button닫힌 뒤 초점 복귀화면은 닫히지만 초점이 숨은 링크에 남음
배경비활성 또는 일반 문서 흐름포커스 정책 명시배경 링크와 메뉴 링크를 동시에 조작

APG 예제는 그대로 복사해 생산 환경에 넣는 코드가 아니라 브라우저와 보조기술 조합에서 직접 시험해야 하는 예시임을 경고합니다. 따라서 이 글의 구조도 구현 전 체크리스트일 뿐입니다. 버튼 이름은 닫힌 상태에서 ‘메뉴 열기’, 열린 상태에서 ‘메뉴 닫기’처럼 행동을 설명하고, 상태와 보이는 패널이 항상 일치하는지 DOM과 화면을 함께 검사합니다.참고: W3C Web Accessibility Initiative · Example Disclosure Navigation Menu

열기·탐색·닫기·복귀 네 동작을 키보드와 터치에서 각각 확인합니다

메뉴는 열린 화면 한 장만 보고 검수할 수 없습니다. 닫힌 상태에서 숨은 링크가 Tab 순서에 없는지, 열기 버튼을 Enter와 Space로 작동할 수 있는지, 열린 뒤 링크 순서가 시각적 목록과 맞는지, Escape 또는 닫기 버튼으로 종료할 수 있는지, 종료 후 초점이 열기 버튼으로 돌아오는지를 확인합니다. W3C disclosure navigation 예제는 Tab 이동, Enter·Space 활성화, Escape로 닫기와 초점 복귀 같은 동작을 설명합니다.참고: W3C Web Accessibility Initiative · Disclosure (Show/Hide) Pattern · W3C Web Accessibility Initiative · Example Disclosure Navigation Menu

  1. 페이지를 새로 열고 키보드 Tab으로 열기 버튼에 도달하며 초점 표시를 확인합니다.
  2. Enter로 메뉴를 열어 `aria-expanded=true`, 패널 표시, 배경 상태가 동시에 바뀌는지 봅니다.
  3. Tab과 Shift+Tab으로 링크를 왕복하며 숨은 요소나 예상 밖의 초점 이동을 기록합니다.
  4. 현재 페이지 링크의 레이블과 aria-current 상태가 실제 URL·H1과 맞는지 확인합니다.
  5. Escape와 닫기 버튼을 각각 시험해 메뉴가 닫히고 초점이 열기 버튼으로 돌아오는지 봅니다.
  6. 터치로 바깥 영역을 눌러 닫는 기능이 있다면 명시적 닫기 버튼 없이도 의존하지 않는지 확인합니다.

초점을 메뉴 안에 가둘지는 메뉴가 전체 화면 dialog처럼 구현되는지에 따라 달라집니다. 단순 disclosure라면 자연스러운 문서 Tab 순서를 유지할 수 있고, 모달처럼 배경을 비활성화한다면 적절한 dialog 패턴과 초점 관리가 추가로 필요합니다. 두 방식을 섞어 시각적으로만 전체 화면인데 배경 링크가 계속 눌리는 상태를 만들지 않습니다. 이 글은 한 방식을 보편 정답으로 정하지 않고 선택한 패턴의 상태와 동작이 일관되는지를 봅니다.참고: W3C Web Accessibility Initiative · Example Disclosure Navigation Menu

링크 높이와 간격, 내부 스크롤, 고정 버튼의 가림을 함께 점검합니다

WCAG 2.2 Target Size (Minimum) 해설은 포인터 입력 대상이 원칙적으로 최소 24×24 CSS 픽셀이거나 정해진 예외를 충족하도록 설명합니다. 모바일 메뉴의 주요 링크와 닫기 버튼은 작은 인라인 링크 예외에 기대기보다 실제 조작 영역 안에 24×24 사각형이 들어가는지 먼저 측정합니다. 아이콘 그림의 크기가 아니라 클릭 가능한 요소의 bounding box를 보고, 서로 가까운 작은 대상은 간격 조건도 확인합니다.참고: W3C Web Accessibility Initiative · Understanding Success Criterion 2.5.8: Target Size (Minimum)

검사관찰값실패 신호수정 방향
열기·닫기 대상실제 너비와 높이아이콘은 크지만 버튼 영역이 작음button 패딩과 최소 크기 조정
인접 링크대상 사이 거리작은 링크가 촘촘히 붙음행 높이·그룹 간격 확대
메뉴 스크롤320×568에서 마지막 링크 접근배경만 스크롤되고 메뉴 끝에 못 감명확한 내부 높이와 overflow 정책
고정 문의 버튼메뉴 끝과 겹침 여부개인정보 링크를 가림흐름 배치 또는 하단 여유 확보
화면 회전세로·가로 상태가로 모드에서 닫기 버튼 사라짐짧은 높이 조건 추가

메뉴를 열 때 본문 스크롤을 막는다면 닫을 때 원래 스크롤 위치가 유지되는지 확인합니다. 주소창 높이 변화와 화면 회전으로 viewport 높이가 줄어도 닫기 버튼과 마지막 링크를 사용할 수 있어야 합니다. 메뉴 안에 자체 스크롤을 두는 경우 스크롤 가능한 영역이 시각적으로 구분되고 키보드·터치 모두 접근 가능한지 봅니다. 링크 수를 줄이지 못한 채 글자 크기만 줄여 한 화면에 맞추지 않습니다.참고: W3C Web Accessibility Initiative · Understanding Success Criterion 2.5.8: Target Size (Minimum) · U.S. Web Design System · Header

페이지마다 메뉴 순서와 이름이 달라지지 않도록 공통 원본에서 생성합니다

홈에서는 ‘자료’, 글에서는 ‘아카이브’, 정책 페이지에서는 ‘콘텐츠’처럼 같은 링크의 이름이 달라지면 반복 탐색이 어려워집니다. W3C Consistent Navigation 기준은 반복 내비게이션이 같은 상대 순서로 나타나도록 요구합니다. 현재 위치 표시나 사용자가 직접 바꾼 정렬처럼 합리적인 상태 차이는 있을 수 있지만, 템플릿을 복사하다 생긴 순서 차이는 제거해야 합니다. 공통 데이터나 템플릿에서 메뉴를 생성하고 페이지별로 링크를 손으로 복사하지 않는 방식이 유지보수에 유리합니다.참고: W3C Web Accessibility Initiative · Understanding Success Criterion 3.2.3: Consistent Navigation

  • 홈·카테고리·글·소개·문의·정책·검색·404에서 메뉴 항목과 순서가 같은가
  • 현재 페이지 링크만 상태가 달라지고 이름과 도착지는 유지되는가
  • 로그인 여부처럼 실제 조건이 없다면 임의의 페이지별 메뉴를 만들지 않았는가
  • 모바일과 데스크톱에서 시각 순서는 달라도 핵심 과업과 경로가 누락되지 않는가
  • 메뉴 링크와 HTML 사이트맵, 푸터의 주요 경로가 서로 모순되지 않는가
  • 새 페이지를 추가할 때 공통 원본과 공개 QA 목록이 함께 갱신되는가

일관성은 모든 링크를 같은 위치에 강제로 넣는 것이 아닙니다. 데스크톱에서는 가로 목록, 모바일에서는 그룹형 disclosure를 쓸 수 있지만 같은 링크가 무엇을 뜻하고 어디로 가는지는 유지되어야 합니다. 모바일에서 덜 중요한 정책 링크를 접힌 그룹으로 옮기더라도 키보드와 검색, 사이트맵으로 접근할 수 있어야 합니다. 실제 사용자의 우선순위는 분석이나 사용자 조사로 확인하기 전까지 가설로 남깁니다.참고: W3C Web Accessibility Initiative · Understanding Success Criterion 3.2.3: Consistent Navigation · U.S. Web Design System · Header

스크립트 지연과 실패 상태에서도 홈과 핵심 경로가 완전히 사라지지 않게 합니다

모바일 메뉴가 JavaScript로만 만들어지고 스크립트가 늦게 오거나 실패하면 모든 내비게이션이 사라질 수 있습니다. 서버 HTML에 기본 링크 목록을 두고 스크립트가 로드된 뒤 접는 점진적 향상 방식을 고려하거나, 최소한 로고 홈 링크와 본문·푸터 탐색을 남깁니다. 로딩 전 메뉴가 잠깐 펼쳐지는 현상을 숨기려고 HTML 전체를 보이지 않게 만들지 않습니다. 실패 상태는 네트워크 차단, JavaScript 오류, 느린 로드에서 별도로 확인합니다.참고: U.S. Web Design System · Header

상태예상 동작검사 방법실패 판정
JavaScript 정상열기·닫기와 상태 동기화버튼·키보드·터치 시험aria-expanded와 화면 불일치
JavaScript 차단홈·본문·대체 탐색 유지스크립트 비활성 새로고침사이트 이동 경로 전부 사라짐
느린 로드내용을 읽을 수 있고 큰 레이아웃 이동 최소화지연 조건에서 화면 관찰보이지 않는 헤더가 본문을 막음
오류 발생본문과 푸터 링크 사용 가능콘솔 오류와 DOM 확인투명 오버레이가 화면을 가림
404 페이지홈·검색·주요 구역 경로 제공없는 URL 직접 접근메뉴 자체가 다른 구조로 바뀜

스크립트 실패 시험에서 메뉴 애니메이션이 없다는 사실은 오류가 아닙니다. 사용자가 사이트 정체를 확인하고 홈이나 핵심 콘텐츠로 이동할 수 있는지가 우선입니다. 페이지에 따라 빌드 파일 경로가 달라 하위 경로에서만 메뉴가 작동하지 않는 문제도 확인합니다. 절대·상대 URL 규칙을 통일하고, 배포된 각 표면의 실제 href와 상태 코드를 검사해야 합니다.

모바일 메뉴의 과업 순서을 확인한 순서

  1. 닫힌 메뉴에서 숨은 링크가 Tab 초점을 받지 않는지 봅니다.
  2. 메뉴를 열어 세 주제 링크를 왕복합니다. 목록과 초점 순서·aria-expanded=true가 같은 상태를 나타내야 합니다.
  3. Escape로 닫아 열기 버튼에 초점이 돌아오는지 확인합니다. 짧은 화면에서도 닫기와 마지막 항목을 사용할 수 있어야 합니다.

모바일 메뉴의 과업 순서 판단에서 제외한 범위

  • Public Notes는 내비게이션 구조를 설명하기 위한 가상 자료실이며 실제 방문자, 분석 데이터 또는 메뉴 성과와 관련이 없습니다.
  • ARIA Authoring Practices 예제는 생산 환경의 완전한 호환성을 보장하지 않으므로 실제 브라우저와 보조기술 검사가 필요합니다.
  • 24×24 CSS 픽셀은 최소 기준과 예외를 포함하며 모든 사용자의 편안한 조작을 보장하는 목표 크기는 아닙니다.
  • 정한 화면 폭과 키보드 시험은 모든 기기, 브라우저, 터치 보조기술과 사용자 설정을 대표하지 않습니다.
  • 메뉴 링크의 우선순위는 사이트별 사용자 조사나 분석 없이 확정할 수 없으며 이 글의 분류는 자체 예제입니다.

모바일 메뉴의 과업 순서에 사용한 원문

원문별 확인일과 참고 범위를 아래에 표시했습니다. 예제 입력값은 설명을 위한 설정이며 원문 기관의 제품 평가를 뜻하지 않습니다.

  1. Disclosure (Show/Hide) PatternW3C Web Accessibility Initiative · 확인 2026-08-20

    버튼, aria-expanded와 선택적 aria-controls를 이용한 펼침·접힘 상태 구조를 참고했습니다.

  2. Example Disclosure Navigation MenuW3C Web Accessibility Initiative · 확인 2026-08-20

    일반 사이트 내비게이션에서 복잡한 menu 역할 대신 disclosure와 링크 목록을 사용하는 예, 키보드·Escape 동작 및 실제 환경 테스트 주의를 참고했습니다.

  3. HeaderU.S. Web Design System · 확인 2026-08-20

    짧은 링크 이름, 사용자 과업 중심 우선순위, 현재 구역, 키보드와 터치 내비게이션 검수 지침을 사용했습니다.

  4. Understanding Success Criterion 2.5.8: Target Size (Minimum)W3C Web Accessibility Initiative · 확인 2026-08-20

    포인터 대상의 24×24 CSS 픽셀 최소 크기와 간격 예외를 메뉴 조작 영역 검수에 적용했습니다.

  5. Understanding Success Criterion 3.2.3: Consistent NavigationW3C Web Accessibility Initiative · 확인 2026-08-20

    여러 페이지에 반복되는 내비게이션을 같은 상대 순서로 제공하는 기준을 페이지 간 비교에 사용했습니다.

광고·협찬 고지
  • 광고·협찬 없이 작성
  • 예시는 detailry 자체 제작이며 실제 고객·매출 자료가 아닙니다.
  • 정정: 문의 페이지
  • 작성 기준: 작성 원칙
웹디자인 카테고리정정·문의

모바일 메뉴의 과업 순서 수정 후 확인 기록

작성 후 그대로 두지 않고 2026년 9월 23일 공개 응답을 기준으로 본문 구조와 출처 경로를 재검사했습니다. 데스크톱 메뉴를 접어 넣는 것에서 끝내지 않고 펼침 상태, 닫기, 현재 위치, 초점 복귀를 하나의 조작 흐름으로 봅니다.

확인 항목2026.09.23 공개 응답판단 범위
접속과 주소HTTP 200, H1 1개, canonical https://detailry.com/articles/web-mobile-menu-structure/공개 URL과 대표 주소 일치만 확인
본문 구조공백 제외 8,383자, H2 12개, 이미지 2개길이가 아니라 주제별 판단 과정과 한계를 재검수
링크 경로내부 7개, 외부 25개, designsystem.digital.gov, w3.org출처 존재와 실제 접속 상태를 별도로 확인

이 기록은 해당 날짜의 공개 상태를 보여주며 사용자 성과, 고객 전환, 제품 성능을 증명하지 않습니다. 이후 본문·이미지·출처가 바뀌면 같은 URL을 다시 확인해야 합니다.