자주 묻는 질문 답변을 위한 디스클로저 (노출/숨김) 예제

다음 예제는 답변이 독립적으로 노출 혹은 숨길 수 있는 자주 묻는 질문 모음을 만들기 위한 디스클로저 설계 패턴 사용을 보여줍니다.

유사한 예는 다음과 같습니다:

예제

주차 FAQs

가까운 사용 가능한 주차 계량기에 요금 지불 없이 주차하고 999-999-9999로 문제를 신고해주세요. 대체 장소를 메모하고 승인하고, 할당 된 시설의 부족 원인을 조사할 것입니다.
주차 사무실로 오혀서 분실 신고를 하셔야 합니다. 분실 허가증 교체 비용이 있습니다. 다만, 허가증을 도난 당한 경우, 교체 수수료 면제를 위해 도난 당한 주차 허가서와 함께 경찰 신고서 사본을 제출하셔야 합니다.
모든 시설은 오전 2시 - 오전 6시까지 제한됩니다. 달력에 휴일로 공식적으로 기재된 경우를 제외하고 어떤 휴일이나 휴무에도 예외는 없습니다. 주의 사항: 24시간 임대 공간, 24시간 임대 구역, 장애인 주차장은 상시 운영됩니다.
일부 주차 시설은 서로 다릅니다. 각 구역 입구에 있는 표시를 기록해두세요.

접근성 특징

키보드 지원

기능
Tab 디스클로저 버튼으로 키보드 초점을 이동시킵니다.
Space 또는
Enter
질문에 대한 답변의 가시성을 전환하는 디스클로저 버튼을 활성화 합니다.

Role, Property, State, Tabindex 어트리뷰트

역할(role) 어트리뷰트 엘리먼트 사용법
aria-controls="ID_REFERENCE" button 디스클로저 버튼에 의해 제어되는 엘리먼트를 식별시킵니다.
aria-expanded="false" button
  • 디스클로저 버튼에 의해 제어되는 컨테이너가 숨김 상태임을 나타냅니다.
  • CSS 어트리뷰트 셀렉터(예를 들어 [aria-expanded="false"])는 시각적 상태를 aria-expanded 어트리뷰트의 값과 동기화하는데 사용됩니다.
  • 노출/숨김 상태의 시각적 표시기는 CSS :before 가상 엘리먼트와 content 속성을 사용하여 생성되므로 운영체제와 브라우저의 고대비 모드에서 이미지가 확실하게 렌더링 됩니다.
aria-expanded="true" button
  • 디스클로저 버튼에 의해 제어되는 컨테이너가 보이는 상태임을 나타냅니다.
  • CSS 어트리뷰트 셀렉터(예를 들어 [aria-expanded="true"])는 시각적 상태를 aria-expanded 어트리뷰트의 값과 동기화하는데 사용됩니다.
  • 노출/숨깅 상태의 시각적 표시기는 CSS :before 가상 엘리먼트와 content 속성을 사용하여 생성되므로 운영체제와 브라우저의 고대비 모드에서 이미지가 확실하게 렌더링 됩니다.

Javascript와 CSS 소스 코드

HTML Source Code