我必须支持IE8。模态本身工作正常,但我尝试调整它(在Firefox中工作正常)在IE8中不起作用。
我只是在模态对话框div(Bootstrap结构中的第二个嵌套的一个)中添加一个类(本例中为宽模态)并通过CSS应用宽度,没什么特别的。
HTML:
<div class="modal fade" id="modalTest" role="dialog">
<div class="modal-dialog wide-modal">
<div class="modal-content ">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title">Testing Modal</h4>
</div>
<div class="modal-body">
<img src="content/Example-Infographic.jpg" width="100%" />
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div>
CSS:
.wide-modal {
width: 60%;
}
我尝试将上面和下面的div添加到没有(正面)效果。它就像在Firefox中的魅力一样,在IE8中根本没有效果。我也试过px宽度,没有区别。我确实有respond.js库,所以一般来说IE8的行为不是这样的。
答案 0 :(得分:80)
在bootstrap 3中,您需要将宽度分配给.modal
类而不是.modal-dialog
#modalTest .modal-dialog
{
width: 500px; /* your width */
}
答案 1 :(得分:14)
我使用CSS和jQuery的组合,以及此页面上的提示,使用Bootstrap 3创建流畅的宽度和高度。我还在Win7上的IE8上测试了它,它运行良好。
首先,一些CSS用于处理内容区域的宽度和可选滚动条
.modal.modal-wide .modal-dialog {
width: 90%;
}
.modal-wide .modal-body {
overflow-y: auto;
}
然后一些jQuery在需要时调整内容区域的高度
$(".modal-wide").on("show.bs.modal", function() {
var height = $(window).height() - 200;
$(this).find(".modal-body").css("max-height", height);
});
完整的注释和代码 http://scottpdawson.com/development/creating-a-variable-width-modal-dialog-using-bootstrap-3/
答案 2 :(得分:10)
我知道它已经很晚了但只是在bs3 docs中找到了你可以将modal-lg
课程添加到你的模态中
<!-- Large modal -->
<button class="btn btn-primary" data-toggle="modal" data-target=".bs-example-modal-lg">
Large modal
</button>
<div class="modal fade bs-example-modal-lg" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
...
</div>
</div>
</div>
<!-- Small modal -->
<button class="btn btn-primary" data-toggle="modal" data-target=".bs-example-modal-sm">
Small modal
</button>
<div class="modal fade bs-example-modal-sm" tabindex="-1" role="dialog" aria-labelledby="mySmallModalLabel" aria-hidden="true">
<div class="modal-dialog modal-sm">
<div class="modal-content">
...
</div>
</div>
</div>
答案 3 :(得分:3)
这当然会改变所有模态窗口的宽度,但它可能会让你更好地了解它的工作原理。我只是这样改变了我的模态窗口。
.modal-body {
position: relative;
padding: 20px;
min-width: 800px; /* SET THE WIDTH OF THE MODAL */
}
.modal-content {
position: relative;
background-color: #fff;
border: 1px solid #999;
border: 1px solid rgba(0,0,0,0.2);
border-radius: 6px;
outline: 0;
-webkit-box-shadow: 0 3px 9px rgba(0,0,0,0.5);
box-shadow: 0 3px 9px rgba(0,0,0,0.5);
background-clip: padding-box;
width: 900px; /* SET THE WIDTH OF THE MODAL */
margin: 50px 0 0 -150px; /* CHANGE MARGINS TO ACCOMMODATE THE NEW WIDTH */
}
<!-- Button trigger modal -->
<a data-toggle="modal" href="#myModal" class="btn btn-primary btn-lg">Launch demo modal</a>
<!-- Modal -->
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title">Modal title</h4>
</div>
<div class="modal-body">
...
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Save changes</button>
</div>
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div><!-- /.modal -->
答案 4 :(得分:3)
#modalTest.modal-dialog{
width: <insert size> !important;
}
the !important is important :v
答案 5 :(得分:2)
我认为您需要设置宽度(以像素为单位)并调整左边距。例如,
.modal-dialog {
width:700px;
margin-left:-320px;
}
左边距必须是模态宽度的一半,滚动条减去30px。
以下是Bootply的示例:http://bootply.com/85213