Список опций для <select>
отображается браузером, и его overflow
и height
не могут быть легко управляемы.У меня есть обходной путь, используя jQuery UI SelectMenu.Смотрите здесь:
$(function() {
$("#datepicker").datepicker({
changeMonth: true,
changeYear: true
});
$("#datepicker").click(function() {
setTimeout(function() {
$(".ui-datepicker-month, .ui-datepicker-year").selectmenu();
}, 10);
});
});
span.ui-selectmenu-button.ui-button {
width: 30%;
}
ul.ui-menu {
max-height: 120px;
}
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<p>Date: <input type="text" id="datepicker"></p>
Заменяет элемент <select>
на управляемый выпадающий список.Так как он основан на блочной модели, вы можете использовать CSS и стилизовать его самостоятельно.