Devin.KR

웹 문서와 검색 폼

지역 행사 소개와 검색 폼을 시맨틱 HTML로 작성합니다.

진도 0%

레슨

  1. 파일과 브라우저 실행

    상대 경로와 개발자 도구를 사용해 문서를 엽니다.

  2. 의미가 있는 문서 구조

    제목 계층과 랜드마크로 행사 소개를 구성합니다.

  3. 이름이 있는 검색 폼

    레이블과 제출 버튼으로 키보드 검색 흐름을 만듭니다.

  4. 키보드와 오류 안내

    포커스 순서와 입력 오류의 안내 위치를 확인합니다.

1단계: 웹 문서와 검색 폼

지역 행사를 찾는 사용자를 위한 소개와 검색 진입 화면을 만듭니다.

요구사항

  • 제공된 첫 모듈 starter에서 지역 행사 소개·예시 목록·상세 이동·검색 폼을 완성합니다. 이전 모듈은 없습니다.
  • main과 h1을 각각 하나 두고 주요 메뉴·소개·검색·행사 article의 역할과 제목 계층을 설명합니다.
  • 검색어와 지역에 label을 연결하고 GET으로 q와 region을 results.html에 전달합니다. 전체 지역 값은 all입니다.
  • 빈 검색어를 required로 막고 항상 보이는 입력 안내를 aria-describedby로 연결합니다. 사용자 정의 오류와 공백 정리는 이후 모듈 범위입니다.
  • KEYBOARD.md에 브라우저와 OS, 실제 Tab·Shift+Tab 순서, 빈 입력 안내, Enter와 버튼 제출 주소를 기록합니다.
  • 실제 서비스 자격증명 없이 교육용 정적 자료를 사용하며 결과 폴더 전체를 다음 모듈에 넘깁니다.

완료 기준

  • npm ci 후 npm test에서 검사 18개, 실패 0개를 확인합니다.
  • 내부 링크 목적지가 존재하고 검색어→지역→검색 버튼 DOM 순서, 레이블과 설명 참조가 검사됩니다.
  • 브라우저에서 빈 입력 검증과 책/서울 Enter 제출, 책/전체 버튼 제출을 관찰해 KEYBOARD.md에 기록합니다. 자동 검사만으로 이 항목을 완료하지 않습니다.
npm test
미션 시작 코드
모범 답안모범 답안 내려받기

검토 기준

  • 교육용 정적 결과 페이지의 한계와 다음 행동을 사용자에게 설명합니다.
  • 태그·레이블·name·설명 참조를 선택한 이유와 자동 검사의 범위를 설명합니다.
  • 키보드 포커스가 보이고 양방향 이동과 제출이 가능한지 수동 기록으로 확인합니다.