Показать сообщение отдельно
  #1 (permalink)  
Старый 26.10.2019, 22:11
Аватар для mi.rafaylik
Кандидат Javascript-наук
Отправить личное сообщение для mi.rafaylik Посмотреть профиль Найти все сообщения от mi.rafaylik
 
Регистрация: 07.12.2012
Сообщений: 113

Получение координат элемента с position: sticky
Когда элемент с position: sticky достигает указанной позиции (например top: 0) и прилипает к окну, то не получается правильно получить его изначальные статичные координаты (относительно окна и относительно родителя).
  • Значение getBoundingClientRect().top становится равно нулю.
  • Значение offsetTop увеличивается по мере прокрутки.
Демонстрация проблемы:
https://jsfiddle.net/Lxud76ma/

Всё это логично, ведь элемент фактически плывет внутри своего родителя. И несмотря на то, что место под его статичное положение остаётся зарезервированным (остальные элементы не сдвигаются, как если бы элемент имел position: fixed), но расчеты координат идут по его фактическом местонахождению.

Как в данном случае получить координаты того места, которое зарезервировано для элемента в его статичном положении, но тогда пока он приклеен к экрану? Есть идеи?

Последний раз редактировалось mi.rafaylik, 13.11.2019 в 02:11.
Ответить с цитированием