Spec-Zone.ru › CSS

:user-valid

Базовая версия 2023

Новое

С ноября 2023 года данная функция работает на последних версиях устройств и браузеров. Возможно, она не будет работать на старых устройствах или браузерах.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Псевдокласс :user-valid CSS псевдокласс представляет собой любой проверенный элемент формы, значение которого корректно проходит проверку на основе его ограничений валидации. Однако, в отличие от :valid, он срабатывает только после взаимодействия пользователя.

Этот псевдокласс применяется, если элемент управления формой действителен и произошло одно из следующих:

  • Пользователь внес изменения в элемент управления формой и подтвердил их, например, переместив фокус.
  • Пользователь пытался отправить форму, даже если изменения в элементе управления не были внесены.
  • Значение было некорректным при получении фокуса, и пользователь внес изменения, сделав его корректным, даже если фокус остался на элементе управления.

После применения этого псевдокласса пользовательский агент повторно проверяет корректность элемента управления при каждом нажатии клавиши, когда элемент управления имеет фокус.

  • Если элемент управления имеет фокус, а значение было некорректным при получении фокуса, повторная проверка выполняется при каждом нажатии клавиши.

В результате, если элемент управления был корректным, когда пользователь начал с ним взаимодействовать, стили валидации изменятся только при переключении фокуса на другой элемент управления. Однако, если пользователь пытается исправить ранее отмеченное некорректное значение, элемент управления сразу же отображает стили корректности при вводе корректного значения. Обязательные элементы помечаются как некорректные только при их изменении пользователем или при попытке отправки неизменённого некорректного значения.

Синтаксис

:user-valid {
  /* ... */
}

Примеры

Устанавливаем цвет и символ для :user-valid

В следующем примере зеленая рамка и ✅ отображаются только после взаимодействия пользователя с полем. Попробуйте изменить адрес электронной почты на другой корректный адрес, чтобы увидеть это в действии.

<form>
  <label for="email">Email *: </label>
  <input
    id="email"
    name="email"
    type="email"
    value="test@example.com"
    required />
  <span></span>
</form>
input:user-valid {
  border: 2px solid green;
}

input:user-valid + span::before {
  content: "✓";
  color: green;
}

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

Спецификация
Селекторы Уровень 4
# user-valid-pseudo

Совместимость с браузерами

Рабочий стол Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на IOS Samsung Internet WebView Android
:user-valid 119 119 884 105 16.5 119 884 79 16.5 25.0 119

См. также

  • :valid
  • :invalid
  • :required
  • :optional
  • :user-invalid

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/:user-valid

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API