Средство выбора даты HTML перекрывает ввод даты

Когда я использую следующий код, поля ввода даты обрезаются и перекрываются встроенным средством выбора даты HTML:

<div class = "form-check form-check-inline">
    <div class = "input-group ml-2">
                <div class = "input-group-prepend">
                    <label class = "input-group-text" for = "date_from">von</label>
                </div>
                <input th:placeholder = "#{date.format}" th:field = "*{from}" type = "date" max = "9999-12-31" min = "1000-01-01"
                       class = "form-control" id = "date_from">
            </div>
    <div class = "input-group ml-2">
        <div class = "input-group-prepend">
            <label class = "input-group-text" for = "date_to">bis</label>
        </div>
        <input th:placeholder = "#{date.format}" th:field = "*{to}" type = "date" max = "9999-12-31" min = "1000-01-01"
               class = "form-control" id = "date_to">
    </div>
</div>

Вот как это выглядит в браузере: Средство выбора даты HTML перекрывает ввод даты

При наведении указателя мыши на поле ввода можно четко увидеть, что это родное средство выбора даты HTML перекрывает поля ввода:

Средство выбора даты HTML перекрывает ввод даты

Итак, мой вопрос: как я могу решить эту проблему?

Использовать тип ввода как текст.

0_0 07.01.2019 17:15

Было бы полезно увидеть любой пользовательский CSS, который вы используете на этой странице, или если вы можете воссоздать его на Fiddle или Codepen.

crazymatt 07.01.2019 17:21

@crazymatt Я не использую собственный CSS. Только Bootstrap с Thymeleaf в качестве движка шаблонов для Spring Boot.

XDAF 07.01.2019 17:43
Улучшение производительности загрузки с помощью 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 страниц, которые помогут...
1
3
917
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Ответ принят как подходящий

Вы можете использовать один из двух вариантов:

  1. Задайте ширину поля ввода таким образом, чтобы вся дата была четко видна.

  2. Задайте меньший размер шрифта, это также позволит четко видеть дату. style = "width:(insert value here)"

Я сталкиваюсь с этим каждый день, используя два шага, которые объяснил Алекс Моррисон, вместе взятые. Также не забывайте, что вы можете выполнять оба шага несколько раз в разных медиа-запросах, чтобы сделать его более отзывчивым.

Вместо того, чтобы вручную добавлять ширину каждый раз, когда вы вводите дату, вы можете либо создать собственный класс, либо настроить таргетинг на каждую дату в css и сделать что-то в соответствии с input[type=date]{width:(your width here);}.

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