@m1lya

Как решить проблему с «дерганием» контента при открытии всплывающих окон?

Набросал пример тут https://jsfiddle.net/yz81kbcu/
По клику я запрещаю скролл для body, но при этом можно скролить сам контент внутри попапа.
А с дерганием не могу ничего решить.
  • Вопрос задан
  • 665 просмотров
Пригласить эксперта
Ответы на вопрос 3
SkiperX
@SkiperX Куратор тега CSS
body.scoll-off {
   position: fixed;
width: 100%;
overflow-y: scroll;
}

только значение window scroll.top нужно сохранить и при закрытии окна подставить
Ответ написан
@drtvader
Вечный студент
Добавлять паддинг справа в 17 пикселей.
Такой баг есть у бутстрапа.
Ответ написан
Вставьте этот код на страницу, и при открытии окна, добавляйте класс .is-compensate-for-scrollbar к body
scrollWidth = window.innerWidth - document.documentElement.clientWidth;
if (scrollWidth > 1) {
	$('<style type="text/css">')
		.html('.is-compensate-for-scrollbar { padding-right: ' + scrollWidth + 'px; }')
		.appendTo('head');
}


https://jsfiddle.net/rmmtd3q2/
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы