Bootstrap's modal
автоматично додає клас modal-open
до тіла, коли відображається модальний діалог, і видаляє його, коли діалог приховано. Ви можете, таким чином, додати у свій CSS:
body.modal-open {
overflow: hidden;
}
Ви можете стверджувати, що наведений вище код належить до кодової бази Bootstrap CSS, але це просте виправлення, щоб додати його на свій сайт.
Оновлення 8 лютого 2013 р.
Це перестало працювати в Twitter Bootstrap v. 2.3.0 - вони більше не додають modal-open
класу до тіла.
Приблизним рішенням буде додавання класу до тіла, коли модал збирається показати, і видалити його, коли модал закритий:
$("#myModal").on("show", function () {
$("body").addClass("modal-open");
}).on("hidden", function () {
$("body").removeClass("modal-open")
});
Оновлення 11 березня 2013 р.
Схоже, modal-open
клас повернеться у Bootstrap 3.0, явно з метою запобігання прокручування:
Повторно вводить .modal-open на тілі (щоб ми могли запустити прокрутку туди)
Дивіться це: https://github.com/twitter/bootstrap/pull/6342 - подивіться у розділі Модаль .