Я пытаюсь изменить css моей группы ввода и текста группы ввода, когда ввод находится в фокусе В этом случае я использую бутстрап 5.
Но как вы можете видеть на изображении ниже. Есть некоторое перекрытие между input и input-group-text
Пока это моя реализация
CSS:
.input-group:focus-within .input-group-text {
border-color: #ced4da;
}
.input-group:focus-within .form-control:focus~.input-group-text {
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
border-color: #80bdff;
box-shadow: 0 0 0 0.25rem rgba(0, 123, 255, 0.25);
}
HTML:
<div class = "form-group col-xs-6 col-md-6">
<label for = "password" class = "required control-label col-form-label text-md-end">Kata sandi</label>
<div class = "input-group">
<input type = "text" class = "form-control @error('password') is-invalid @enderror" name = "password" id = "password" placeholder = "Masukkan kata sandi" autocomplete = "off">
<span class = "input-group-text rounded-end"><i class = "eyepass eyeCross"></i></span> @error('password')
<div class = "invalid-feedback" role = "alert">
<strong>{{ $message }}</strong>
</div>
@enderror
</div>
РЕЗУЛЬТАТ :
Попробуйте добавить отступы к тексту группы ввода, но похоже, что он не работает.
ОБНОВЛЯТЬ:
Основываясь на ответе HDP, тень коробки выглядит лучше. Но каким-то образом теневые левые и правые отступы выглядят намного больше, чем размер по умолчанию.






Подать заявку outline:none на вход
--
схема: ни один ввод не работает
@Rojo Проблема еще не решена
@lauwis, как я вижу, тип ввода = пароль, когда вы пишете что-то, что отображается в виде текста - дайте нам воспроизводимый пример, чтобы мы могли вам помочь
@Nevazno_html_css_js_3 это просто потому, что я переключаю значок глаза, чтобы показать пароль
Можно использовать этот онлайн-компилятор angrytools.com/bootstrap/editor , чтобы запустить его, и появится перекрывающаяся тень окна.
Вам нужно будет установить тень окна фокуса, как показано ниже css.
.input-group:focus-within .input-group-text {
border-color: #ced4da;
}
.input-group:focus-within .form-control:focus~.input-group-text {
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
border-color: #80bdff;
box-shadow: 0.30rem 0 0 0.25rem rgba(0, 123, 255, 0.25);
}
.input-group:focus-within .form-control:focus{
box-shadow:-0.25rem 0 0 .25rem rgba(13,110,253,.25)
}
.input-group:focus-within .form-control.is-invalid:focus{
box-shadow:-0.25rem 0 0 .25rem rgba(var(--bs-danger-rgb),.25)
}
В противном случае вы можете использовать 3-й метод отсюда: Иконка внутри ввода с небольшим пользовательским CSS
Здравствуйте HDP, спасибо за ответ. Я обновляю свою ветку. На основании предоставленного вами css кажется, что размер тени слева и справа больше, чем размер начальной загрузки 5 по умолчанию. Можно ли справиться с этим вопросом? Попробуйте изменить размер тени блока самостоятельно, но результат плохой, снова отображается перекрывающаяся тень блока
Я знаю, но больше невозможно. потому что невозможно создать только какую-то конкретную боковую тень. Здесь мы создаем тень внешнего блока, а затем перемещаем любую сторону. Надеюсь, вы понимаете.
@lauwis У меня есть обновленный ответ. попробуйте второй способ. Значок внутри ввода с небольшим пользовательским css. Надеюсь, это поможет.
Пожалуйста, отредактируйте свой вопрос, чтобы уточнить, как именно вы решили проблему и почему ваше решение работает. (включите соответствующий код из исходного сообщения)