Задать вопрос
serovpochta
@serovpochta
Лысый

Учитывать при параллаксе фона background-position: 50% 50%?

Имеем код:

$(window).scroll(function(e){
  parallax();
});
function parallax(){
  var scrolled = $(window).scrollTop();
  $('#lk-conteyner').css('background-position', '0 '+(-scrolled*0.2)+'px');
}


Имеем стиль фона блока #lk-conteyner:

background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;


И вот в чем беда:

-При попытке скролла из-за позиционирования 50% 50% фона, фон сначала "падает" в блоке top: 0 , как заставляет скрипт (ну и далее, происходит параллакс при скролле) И это падение, конечно, весь эффект портит
-А позиционирование фона необходимо оставить навсегда максимально центрированным

Можно было создать параллакс от верха страницы так:

$(window).scroll(function(e){
  parallax();
});
function parallax(){
  var scrolled = $(window).scrollTop();
  $('#lk-conteyner').css('top',-(scrolled*0.2)+'px');
}


Но не подходит мне это Блок находится в плагине и у него нет родителя

Чем дополнить скрипт, что бы при параллаксе был так же спазиционированным по центру фон без дерганний его?
Через css, кажется, здесь ничего не сделаешь

Спасибо!
  • Вопрос задан
  • 209 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillfactory
    Профессия Веб-разработчик
    12 месяцев
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Решения вопроса 1
qork
@qork
{ background: #F00B42 }
$('#lk-conteyner').css('background-position', '50% '+(-scrolled*0.2)+'px');
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы