Задать вопрос
zaza41rus
@zaza41rus

Почему css срабатывает только при required в форме?

Чет не понимаю как заставтить данный эфект работать без обязательного пареметра к заполнению.
  • Вопрос задан
  • 72 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Профессиональная вёрстка на HTML и CSS
    3 месяца
    Далее
  • Stepik
    Основы HTML и CSS
    2 недели
    Далее
  • Бруноям
    Вёрстка на HTML и CSS
    3 месяца
    Далее
Решения вопроса 1
Eridani
@Eridani
Мимо проходил
Потому что оно так работает.
Следите JS'ом событие input и проверяйте, заполнено ли поле...Если заполнено, добавляете класс со стилями аналогичными focus и active

Ответ написан
Пригласить эксперта
Ответы на вопрос 2
sinneren
@sinneren
Потому что состояние валидности(valid) происходит только при required для текстовых полей. Спецификация.
Для полей tel, number, и других специфичных происходит проверка типа, потому там сработает. В тексте какая вам проверка-то, потому флаг required заставляет проверить 1+ символов на наличие, потому и работает. Сам на днях мучался... Мб попробовать pattern применить с регуляркой на любой символ
в принципе, если развернуть стили, к не required применить паттерн типа такого:`pattern="[*]{1,}"` и применить к `input[type="text']:not([required])` то тоже будет работать.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы