Поведение фонового изображения при прокрутке на развернутом веб-сайте неустойчиво. Предполагается, что это канцелярские принадлежности, ожидаемое поведение при локальной сборке

#javascript #html #css

#javascript #HTML #css

Вопрос:

Создан веб-сайт Jekyll на основе темы 3-стороннего разработчика (МАССОВО).

Код веб-сайта доступен здесь: https://git.ikrypto.club/FNB_Japan/FNBJapan

При посещении развернутого веб-сайта фоновое изображение не остается постоянным, как ожидалось (вы можете увидеть ожидаемое поведение в демо-версии темы,https://iwiedenm.github.io/jekyll-theme-massively / (Редактировать: на самом деле это лучший пример, https://massively.ghost.io / ). В принципе, ожидается, что фоновое изображение останется постоянным, а передний план должен прокручиваться вместе с пользователем.).

Вы можете увидеть разницу в поведении, если зайдете на наш веб-сайт,https://fnb-japan.info .

Однако, когда код выполняется локально и создается с

 bundle exec jekyll serve
  

Фоновое изображение не перемещается (как ожидалось). Что происходит и как я могу это исправить?

Примечание: Похоже, что эта проблема появляется только в FF Nightly, а не в Chrome

Редактировать: Похоже, это проблема с Firefox Nightly, в отличие от веб-сайта. Этот вопрос технически решен.

Редактировать 2: Похоже, что проблема сохраняется и связана с плохой реализацией параллаксной прокрутки, вызывающей мерцание параллакса.

Редактировать 3: Эта проблема возникает только после того, как окно имеет определенную ширину, и разница фактически заключается не в локальном / развернутом, а в разных размерах окна.

Комментарии:

1. Фон тоже прокручивается в моем Chrome (и довольно неустойчиво)

2. AKX спасибо, это очень полезно знать. Действительно странно, что это не похоже на согласованное поведение, и что я не могу воспроизвести его в локальных сборках

Ответ №1:

Фоновый div ( #bg ) преобразуется с помощью этого кода в входящем в комплект плагине parallax (как видно из установки «break on attribute modification» для элемента bg в инспекторе Chrome), который, похоже, активируется этим вызовом:

 // Background.
$wrapper._parallax(0.925);
  

Удаление этих строк также должно устранить эффект параллакса.

Комментарии:

1. Большое вам спасибо. На самом деле я не хочу отключать параллакс, просто хочу, чтобы он перестал мерцать. Вместо этого я хочу, чтобы фоновое изображение было зафиксировано в определенном месте и никогда не перемещалось, пока прокручивается передний план.