--- {"id":"select","title":"셀렉트","category":"컴포넌트","order":37,"summary":"폼에서 정해진 값 하나를 선택·제출의 사용·상태·접근성 계약.","status":"문서 기준 · UI 미검증","references":["components/select/usage"]} --- # 셀렉트 ## 목적과 사용 폼에서 정해진 값 하나를 선택·제출에 사용합니다. 명령 실행 메뉴와 긴 목록 검색은 별도 컨트롤을 검토합니다. ## 구성과 변형 라벨, 현재 값, 옵션, 도움말. 변형의 외형은 각 제품의 기존 [토큰](tokens.md)을 사용합니다. Carbon의 크기·색·모서리·아이콘을 가져오지 않습니다. ## 동작 규칙 - SELCTL-01 MUST: 미선택 placeholder를 실제 유효값으로 제출하지 않습니다. - SELCTL-02 SHOULD: 브라우저 네이티브 선택 동작을 유지합니다. - SELCTL-03 MUST: 필수 선택의 오류를 해당 컨트롤에 연결합니다. - SELCTL-04 SHOULD: 옵션이 길거나 많으면 검색 가능한 선택기를 검토합니다. ## 접근성 label 연결과 네이티브 키보드 조작을 보존합니다. 공통 [접근성 기준](accessibility.md)도 함께 적용합니다. ## 콘텐츠 예시 좋음: ‘운영체제 선택’ / 피함: 선택하면 설명 없이 서버 재설치 실행. ## 우리 구현과 연결 기존 폼 field name과 허용 옵션은 제품 서버의 계약입니다. 제품별 소유 경로는 [WICKEDVPS](product-vps.md), [Panel](product-panel.md), [Blesta](product-blesta.md)와 [소스 근거](source-evidence.md)를 확인합니다. 코드 존재와 모든 사용처의 준수는 다르며, 별도 표시가 없는 제품별 준수 상태는 미검증입니다. ## 상태와 검증 빈 선택·옵션 제거·서버 재검증·모바일 선택 UI를 확인합니다. 일반·hover·focus·실행 중·실패·성공·disabled·read-only 중 해당하는 상태를 기록합니다. 해당하지 않는 상태를 임의로 만들지 말고 이유를 남깁니다. [검증 체크리스트](testing.md)에 증거를 연결합니다.