네이티브 <input type="number">를 쓰면 스피너 버튼과 검증을 브라우저가 대신 해주고, 커스텀으로 만든다면 입력창에 role="spinbutton"과 aria-valuenow/aria-valuemin/aria-valuemax를 둬서 지금 값과 범위를 스크린리더가 읽게 합니다.
이름이 겹쳐 헷갈리기 쉬운 게 두 가지 있습니다. 슬라이더는 넓은 범위에서 대략적인 값을 드래그로 빠르게 고르는 데 적합하지만, 숫자 입력은 "장바구니 수량 4개"처럼 이미 아는 정확한 값을 한 단위씩 다루는 데 적합합니다. 그리고 이 사전의 다른 항목인 "스테퍼"(위저드 단계 표시기)와는 한국어 명칭만 겹칠 뿐 전혀 다른 컴포넌트입니다 — 그쪽은 "배송지 → 결제 → 완료" 같은 진행 단계를 보여주고, 이 숫자 입력은 하나의 수량 값을 늘리고 줄일 뿐입니다.
버튼을 길게 누르고 있으면 빠르게 연속 증가하는 것도 흔한 패턴이지만, 그 경우에도 최종 값은 항상 min/max 안에 갇혀야 합니다.