мое 2 ¢ быстрое глобальное исправление:
(function () {
$('.table-responsive').on('shown.bs.dropdown', function (e) {
var $table = $(this),
$menu = $(e.target).find('.dropdown-menu'),
tableOffsetHeight = $table.offset().top + $table.height(),
menuOffsetHeight = $menu.offset().top + $menu.outerHeight(true);
if (menuOffsetHeight > tableOffsetHeight)
$table.css("padding-bottom", menuOffsetHeight - tableOffsetHeight);
});
$('.table-responsive').on('hide.bs.dropdown', function () {
$(this).css("padding-bottom", 0);
})
})();
Пояснения: когда отображается раскрывающееся меню внутри «.table-responsive», оно вычисляет высоту таблицы и расширяет ее (с заполнением), чтобы она соответствовала высоте, необходимой для отображения меню. Меню может быть любого размера.
В моем случае это не таблица с классом .table-responsive, это обертка div:
<div class="table-responsive" style="overflow:auto;">
<table class="table table-hover table-bordered table-condensed server-sort">
Итак, $ table var в скрипте на самом деле является div! (для ясности ... или нет) :)
Примечание: я заключаю его в функцию, чтобы моя IDE могла свернуть функцию;) но это не обязательно!