打开模态后引导程序主体自动填充删除

问题描述 投票:0回答:4
jquery twitter-bootstrap twitter-bootstrap-3
4个回答
6
投票

我也有同样的问题。正如接受的答案中那样,使用 Javascript 删除内联样式将删除填充,但直到模态完全显示后才会删除,因此它仍然会导致某种不稳定的行为。最后我用CSS删除了填充,这将确保页面内容不会移动并且始终没有填充。

body.modal-open {
  padding-right: 0 !important;
}

希望这对有同样问题的人有帮助。


4
投票

使用所示函数进行更新:

$('#modal-content').on('shown.bs.modal', function() {
       $("body.modal-open").removeAttr("style");
 });

或者对于以前版本的 Bootstrap :

$('#modal-content').on('shown', function() {
        $("body.modal-open").removeAttr("style");
})

欲了解更多信息,请查看此链接


1
投票

我知道这是迟了一年的答案,但只是为了让遇到同样问题的人,如果你只是采用迈克尔的解决方案,你可以面对第二个问题,他的解决方案对我有很大帮助,但我面临第二个问题,当打开一些模态时,我只是在某些元素上发生了奇怪的变化,在尝试了一些更改之后,我最终使用了:

body:not(.modal-open){
  padding-right: 0px !important;
}

当您打开模态时,您将保留填充,并在不存在时删除填充,这样您不仅可以解决填充问题,还可以解决移位问题(您可以得到这个,但并非总是如此),您还可以保留“ fade”类,这也会导致一些问题。


0
投票

如果其他方法不起作用那么:

<body style="padding-right:0px !important;">

这将放置 19px 填充,但不会更多..

© www.soinside.com 2019 - 2024. All rights reserved.