Bootstrap 2からBootstrap= 3.に移動しています。古いバージョンでは、コンテンツが長いモーダルを使用していました。最大の高さに達しました。
Bootstrap 3では、モーダルはコンテンツ全体を表示するように拡張されているだけであり、実際にページの最後に到達してモーダルフッターのボタンを見るにはページダウンキーを使用する必要があります。ブラウザウィンドウの右端にあるスクロールバーを使用してください。スクロールバーは背景で覆われているため、モーダルボックス内のコンテンツだけをスクロールするのは直感的ではありません。
bootstrap 3でモーダルを実現して、最大高さに達したときに自動的にスクロールバーを挿入してコンテンツをスクロールするにはどうすればよいですか?
次のように、モーダルクラスに最大高さを設定してみました。
.modal{
max-height:80%;
}
.modal-header{
height:15% !important;
}
.modal-body{
height:70%;
overflow:auto;
}
.modal-footer{
height:15%;
}
しかし、期待どおりに機能しません。モーダルウィンドウは最大サイズに達しますが、コンテンツをそこにカットするだけで、フッターも表示されません。
助けてくれてありがとう。
動的なコンテンツがある場合、これは苦痛になります。私はこれを使用して、正しい高さを確認してからスクロールしました:
$('#modal').on('shown.bs.modal', function () {
$('.modal-dialog').css('height', $('.modal-dialog').height() );
});
$('#modal').on('hidden.bs.modal', function () {
$('.modal-dialog').css('height', 'auto');
});
https://github.com/twbs/bootstrap/issues/14916 (「モーダルオーバーレイはスクロールバーの上にある」)を説明しているようです。これはBootstrap v3で修正されます.3.1 by https://github.com/twbs/bootstrap/pull/14927 (「モーダルのスクロールバーにオーバーレイするモーダル背景を修正する」)。