플레이스홀더('placeholder')는 입력 전에 보이는 힌트일 뿐, 라벨('label')이 아닙니다. 값을 입력하는 순간 브라우저가 플레이스홀더를 지워버리기 때문에, 라벨 역할까지 맡기면 사용자는 무엇을 입력하던 칸이었는지 곧바로 잊어버립니다.
짧은 폼 하나라면 버틸 만해도, 여러 칸을 채우다 위쪽 칸으로 돌아가거나 자동완성이 값을 채워 넣으면 문제가 커집니다. 스크린리더도 플레이스홀더를 라벨만큼 안정적으로 읽어주지 않습니다.
데모는 실제 input 두 개입니다. 같은 값이 채워져도 ✕ 칸은 힌트가 통째로 사라지고, ✓ 칸은 위 라벨이 그대로 남아 맥락을 지킵니다.
언제 쓰나
짧은 검색창 하나쯤은 플레이스홀더만으로 버틸 수 있지만, 폼에 필드가 2개 이상이면 항상 별도 라벨을 두세요.