8

我在 IE(IE 8 / IE 9)上使用 Bootbox 4 和 Bootstrap 3,一切都按预期工作。

看起来在 Bootstrap 3 中,您可以按如下方式在 CSS 中设置模态宽度,但是,这样的任何事情都会改变我所有的模态:

.modal-dialog {
    width:70% !important;
}

在 CSS、jQuery 或 Bootbox 设置中是否有一种方法可以仅针对一个特定模式更改 Bootbox 警报模式的宽度?Bootbox 页面只有一个非常短的文档,我在其他任何地方都找不到这方面的信息。

更新

创建特定模式的 JS(带有示例数据):

bootbox.dialog({
    message: " \
        <table class='table table-hover'> \
            <thead> \
                <tr> \
                    <th>Item Name</th> \
                    <th>Location</th> \
                    <th>Path</th> \
                    <th>Last Update</th> \
                </tr> \
            </thead> \
            <tbody> \
                <tr> \
                    <td>Item 1</td> \
                    <td>Navbar - Level 2</td> \
                    <td>Products - blabla</td> \
                    <td>Added by xxx on 05 Aug 2014</td> \
                </tr> \
            </tbody> \
        </table>",
    title: "Search Results",
    buttons: {
        main: {
            label: "Close",
            className: "btn-primary"
        }
    },
    className: "modal70"
});

还有我当前的 CSS:

.modal-dialog.modal70 {
    width:70% !important;
}
4

3 回答 3

14

尝试这个:

.modal70 > .modal-dialog {
    width:70% !important;
}


更新:

试用演示

于 2014-08-10T09:57:21.253 回答
6

正如更多信息...

正如文档所说,您可以使用构造函数中的“size”属性控制模态的大小。

将相关的 Bootstrap 模态大小类添加到对话框包装器。
有效值为“大”和“小”(默认值:null)

bootbox.dialog({
    size: <small|large>
});

请参阅片段以获取使用示例(最好在全屏中查看)

$(".size-by-funcion-0").click(function() {
    bootbox.dialog({
        size: "null",
        title: "Default Size Modal Example",
        message: "...",
    });
});

$(".size-by-funcion-1").click(function() {
    bootbox.dialog({
        size: "small",
        title: "Small Size Modal Example",
        message: "...",
    });
});

$(".size-by-funcion-2").click(function() {
    bootbox.dialog({
        size: "large",
        title: "Large Size Modal Example",
        message: "...",
    });
});

/*********************/
// or make it dynamic... with only one function
$(".dynamic-size").click(function() {
    bootbox.dialog({
        size: $(this).data('size'),
        title: "Dynamic Size Modal Example",
        message: "...",
    });
});
p {
    cursor: pointer;
    background-color: #ccc;
}
<script type="text/javascript" src="//code.jquery.com/jquery-2.1.0.js"></script>
<script type="text/javascript" src="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
<link rel="stylesheet" type="text/css" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
<script type="text/javascript" src="https://github.com/makeusabrew/bootbox/releases/download/v4.3.0/bootbox.min.js"></script>

<p class="size-by-funcion-0">Modal with the default size</p>
<p class="size-by-funcion-1">Modal with "size:small"</p>
<p class="size-by-funcion-2">Modal with "size:large"</p>

<hr />

<p class="dynamic-size" data-size="null">Modal with "size:default"</p>
<p class="dynamic-size" data-size="small">Modal with "size:small"</p>
<p class="dynamic-size" data-size="large">Modal with "size:large"</p>

有关来源的更多信息:http: //bootboxjs.com/documentation.html

注意:需要 Bootstrap 3.1.0 或更高版本。

于 2015-05-06T12:05:26.820 回答
0

如果 Moshtaf 的解决方案不起作用,请再添加一行:

.modal70 > .modal-dialog {
    width:70% !important;
    max-width:70% !important;
}

这是因为 Bootbox 包含的 max-width 的默认值也可以覆盖宽度的定义。

于 2019-06-17T09:36:08.123 回答