@QnaTwitt

Как обратится к предыдущему элементу css?

Есть такой элемент:
<label>
    <input type="email" placeholder=" " name="email">
   <p>Email</p>
</label>

И когда срабатывает валидация добавляется снизу:
<span class="field-error">error.required</span>

Вот так получается:
<label>
    <input type="email" placeholder=" " name="email">
   <p>Email</p>
</label>
<span class="field-error">error.required</span>


Можно как-то добавлять к примеру красный бордер к label, если под ним есть "field-error"?
  • Вопрос задан
  • 211 просмотров
Решения вопроса 1
develx
@develx Куратор тега CSS
Web developer
label:has(+ .field-error) {
  border: 2px solid red;
}


https://codepen.io/xdevelx/pen/wvXmqvz

Но нужно смотреть поддержку браузеров https://caniuse.com/css-has
Если не устроит, то js
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
delphinpro
@delphinpro Куратор тега CSS
frontend developer
Нет, нельзя.
Вам остаётся только поправить или настроить скрипт валидации.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы