:required

Псевдоклас CSS :required (обов'язковий) представляє всі елементи <input>, <select> і <textarea>, які мають атрибут required.

Спробуйте його в дії

Цей псевдоклас корисний для виділення полів, які повинні містити дійсні дані, перш ніж форма може бути подана.

[!NOTE] Псевдоклас :optional вибирає необов'язкові поля форм.

Синтаксис

:required {
  /* ... */
}

Доступність

До обов'язкових полів <input> повинен бути застосований атрибут required. Завдяки цьому можна мати впевненість, що люди, які користуються допоміжними технологіями, як то читачем з екрана, зможуть зрозуміти, які поля потребують дійсного вмісту для успішного подання форми.

Якщо форма також містить необов'язкові поля, то обов'язкові поля повинні бути візуально позначені, у спосіб, який не покладається лише на колір для передачі змісту. Зазвичай використовують описовий текст чи піктограму.

Приклади

Обов'язкове поле має червону межу

HTML

<form>
  <div class="field">
    <label for="url_input">Уведіть URL:</label>
    <input type="url" id="url_input" />
  </div>

  <div class="field">
    <label for="email_input">Уведіть адресу електронної пошти:</label>
    <input type="email" id="email_input" required />
  </div>
</form>

CSS

label {
  display: block;
  margin: 1px;
  padding: 1px;
}

.field {
  margin: 1px;
  padding: 1px;
}

input:required {
  border-color: #800000;
  border-width: 3px;
}

input:required:invalid {
  border-color: #c00000;
}

Результат

Специфікації

Сумісність із браузерами

desktop mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on iOS Samsung Internet
:required
Chrome Full support 10
Edge Full support 12
Firefox Full support 4
Internet Explorer Full support 10
Opera Full support 10
Safari Full support 5
WebView Android Full support 4.4.3
Chrome Android Full support 18
Firefox for Android Full support 4
Opera Android Full support 10.1
Safari on iOS Full support 5
Samsung Internet Full support 1.0

Дивіться також