由于您的内容必须是动态的,您可以在模态的show 事件上动态设置模态的 css 属性,这将重新调整模态的大小以覆盖其默认规范。引导的原因是使用以下 css 规则将最大高度应用于模态体:
.modal-body {
position: relative;
overflow-y: auto;
max-height: 400px;
padding: 15px;
}
所以你可以使用 jquery css 方法动态添加内联样式:
对于较新版本的引导程序,请使用 show.bs.modal
$('#modal').on('show.bs.modal', function () {
$(this).find('.modal-body').css({
width:'auto', //probably not needed
height:'auto', //probably not needed
'max-height':'100%'
});
});
对于旧版本的引导程序,请使用 show
$('#modal').on('show', function () {
$(this).find('.modal-body').css({
width:'auto', //probably not needed
height:'auto', //probably not needed
'max-height':'100%'
});
});
或使用css规则覆盖:
.autoModal.modal .modal-body{
max-height: 100%;
}
并将此类 autoModal 添加到您的目标模式中。
在小提琴中动态更改内容,您将看到模态相应地调整大小。 Demo
较新版本的引导程序请参阅可用的event names。
-
show.bs.modal 该事件在调用 show 实例方法时立即触发。如果是由单击引起的,则单击的元素可用作事件的 relatedTarget 属性。
-
shown.bs.modal 当模式对用户可见时触发此事件(将等待 CSS 转换完成)。如果是由单击引起的,则单击的元素可用作事件的 relatedTarget 属性。
-
hide.bs.modal 在调用 hide 实例方法时立即触发此事件。
-
hidden.bs.modal 当模式对用户完成隐藏时会触发此事件(将等待 CSS 转换完成)。
-
loaded.bs.modal 当模态使用远程选项加载内容时触发此事件。
支持旧版引导程序modal events。
-
Show - 此事件在调用 show 实例方法时立即触发。
-
显示 - 当模式对用户可见时触发此事件(将等待 css 转换完成)。
-
hide - 当调用 hide 实例方法时立即触发此事件。
-
hidden - 当模式对用户完成隐藏时触发此事件(将等待 css 转换完成)。