Сценарий по умолчанию скрывает полосы прокрутки страницы, применяя overflow: hidden;
для элемента body
. Поскольку это приводит к тому, что элемент body расширяется для заполнения свободного пространства, скрипт также вычисляет ширину вертикальной полосы прокрутки и использует это значение для установки правого поля для элемента body
. Это работает очень хорошо (как вы можете видеть на домашней странице и во всех демонстрациях), но это можно нарушить, добавив некоторые дополнительные правила CSS, например, установив 100% ширину для элемента body.
Решением будет удаление (обычно ненужных) правил CSS, нарушающих рабочий процесс по умолчанию, или установка $.fancybox.defaults.hideScrollbar = false;
для предотвращения скрытия полос прокрутки страницы.
Редактировать: в вашем случае смещение страницы вызвано этим правилом CSS:
body {
transition: all 400ms ease;
}
Например, вы анимируете все, даже margin-right
, добавленное в fancybox. Таким образом, либо удалите это правило CSS, либо измените all
на width
или все, что вы хотите анимировать.