Bootstrap 5 box-shadow перекрывается в группе ввода

Я пытаюсь изменить 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, тень коробки выглядит лучше. Но каким-то образом теневые левые и правые отступы выглядят намного больше, чем размер по умолчанию.

Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
0
0
84
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Подать заявку outline:none на вход

--

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

Rojo 30.03.2023 01:54

схема: ни один ввод не работает

lauwis 30.03.2023 09:48

@Rojo Проблема еще не решена

lauwis 30.03.2023 09:48

@lauwis, как я вижу, тип ввода = пароль, когда вы пишете что-то, что отображается в виде текста - дайте нам воспроизводимый пример, чтобы мы могли вам помочь

Nevazno_html_css_js_3 30.03.2023 10:03

@Nevazno_html_css_js_3 это просто потому, что я переключаю значок глаза, чтобы показать пароль

lauwis 30.03.2023 10:06

Можно использовать этот онлайн-компилятор angrytools.com/bootstrap/editor , чтобы запустить его, и появится перекрывающаяся тень окна.

lauwis 30.03.2023 10:11
Ответ принят как подходящий

Вам нужно будет установить тень окна фокуса, как показано ниже 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 30.03.2023 12:27

Я знаю, но больше невозможно. потому что невозможно создать только какую-то конкретную боковую тень. Здесь мы создаем тень внешнего блока, а затем перемещаем любую сторону. Надеюсь, вы понимаете.

HDP 30.03.2023 13:27

@lauwis У меня есть обновленный ответ. попробуйте второй способ. Значок внутри ввода с небольшим пользовательским css. Надеюсь, это поможет.

HDP 30.03.2023 13:36

Другие вопросы по теме