@winers
Начинающий программист

Почему не работает scss c input:invalid?

#form-registry input:invalid  .button {
    pointer-events: none;
}
#form-registry input:invalid + .button {
    pointer-events: none;
}
#form-registry input:invalid  {
    .button {
         pointer-events: none;
    }
}
#form-registry input:invalid  {
    &.button {
         pointer-events: none;
    }
}

ни одна из конструкций не отрабатывает. Но если сделать через
@if (#form-registry input:invalid) {
    .button {
        pointer-events: none; // в этом случаем кнопка отключается
    }
} @else {
    .button {
        pointer-events: all; // но это условие уже не работает
    }
}

не могу задисаблить кнопку вызова капчи до прохождения валидации инпутов(сабмит висит уже на кнопке самой модалки с капчей)
почему не работает scss? может из-за того что scss компилится в css? проект на laravel blade.php
  • Вопрос задан
  • 93 просмотра
Решения вопроса 1
delphinpro
@delphinpro Куратор тега CSS
frontend developer
#form-registry input:invalid .button – это бессмысленный селектор. Input не может содержать внутри себя другие элементы.

#form-registry input:invalid  {
    .button {
         pointer-events: none;
    }
}


Это то же самое

#form-registry input:invalid  {
    &.button {
         pointer-events: none;
    }
}


Здесь вы либо не понимаете, что делаете, либо хз. Этот код сделает сам инпут прозрачным для указателя, если поле заполнено неправильно и имеет класс button

#form-registry input:invalid + .button

Вот здесь уже что-то осмысленное. Если кнопка расположена сразу после инпута, то она станет прозрачной для указателя, если поле заполнено неверно.

Конструкция с ифом тоже бредовая.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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