본문 바로가기
명함 만들기 캐릭터 모음 16가지 디자인 · PNG / SVG / PDF

텍스트 입력칸

한 줄짜리 값을 받을 때 — 무엇을 적어야 하는지 라벨과 도움말이 먼저 말해 주는 조각.

입력

실제 미리보기

출처

<div class="dc-field">
  <label class="dc-field__label" for="dc-field-name">받는 분 이름</label>
  <input class="dc-field__input" id="dc-field-name" type="text" name="name" placeholder="홍길동" aria-describedby="dc-field-name-help">
  <p class="dc-field__help" id="dc-field-name-help">주문서와 택배 송장에 그대로 인쇄됩니다.</p>
</div>
.dc-field {
  display: flex; flex-direction: column; gap: var(--dc-2);
  max-width: 420px; font-family: var(--dc-font);
}
.dc-field__label {
  font-size: 14px; font-weight: 600; color: var(--dc-text); line-height: 1.3;
}
.dc-field__req { color: var(--dc-danger); margin-left: 2px; }
.dc-field__input {
  width: 100%; min-height: 44px; padding: 0 var(--dc-3);
  border: 1px solid var(--dc-line-field); border-radius: var(--dc-r-sm);
  background: var(--dc-surface); color: var(--dc-text);
  font-family: inherit; font-size: 15px; line-height: 1.4;
  transition: border-color var(--dc-fast), box-shadow var(--dc-fast);
}
.dc-field__input::placeholder { color: var(--dc-text-mute); }
.dc-field__input:hover { border-color: var(--dc-line-bold); }
.dc-field__input:focus {
  outline: none; border-color: var(--dc-brand);
  box-shadow: 0 0 0 3px var(--dc-brand-soft);
}
.dc-field__input[aria-invalid="true"] { border-color: var(--dc-danger); }
.dc-field__input[aria-invalid="true"]:focus { box-shadow: 0 0 0 3px var(--dc-danger-soft); }
.dc-field__input[disabled] {
  background: var(--dc-sunken); color: var(--dc-text-mute);
  border-color: var(--dc-line); cursor: not-allowed;
}
.dc-field__help { margin: 0; font-size: 13px; line-height: 1.5; color: var(--dc-text-sub); }
.dc-field__error {
  margin: 0; display: flex; align-items: flex-start; gap: var(--dc-1);
  font-size: 13px; font-weight: 600; line-height: 1.5; color: var(--dc-danger);
}
.dc-field__ok {
  margin: 0; display: flex; align-items: flex-start; gap: var(--dc-1);
  font-size: 13px; line-height: 1.5; color: var(--dc-ok);
}

이렇게 씁니다

  • 라벨은 항상 칸 위에 둔다 — 자리표시자만 있으면 입력을 시작한 순간 무슨 칸인지 사라진다
  • 도움말은 적기 전에 필요한 말, 오류 문구는 적은 뒤에 필요한 말이다
  • 오류는 "형식이 올바르지 않습니다"가 아니라 "010-1234-5678 형태로 적어 주세요"처럼 고칠 방법을 쓴다

주의할 점

  • 오류를 색으로만 알리지 마라 — 문구와 아이콘을 함께 둔다
  • 테두리는 --dc-line-field 로 — 더 연한 선은 다크 모드에서 칸이 사라진다

다음에 볼 것