Как зафиксировать сайт при открытии меню на Safari

73
13 апреля 2021, 08:00

Всем привет. У меня есть сайт, который делаю. http://advokat-v-spb.ru/ В нем имеется фиксированное меню. При открытии меню, срабатывает overflow:hidden для html и body, чтоб наверняка :)

Но есть такой друг, как safari, который мучает сайт. У самого меню есть элемент скролла, т.к. высокое меню, выходит, что скролится весь сайт, при том, что его не трогают, а только меню. Решилась проблема так.

height:100vh; overflow:hidden;

да, все заработало шикарно, даже в сафари все супер, ничего не листается, меню работает превосходно, но проблема в том, что пользователя кидает в самое начало страницы, т.к. я понимаю, что обрезается сверху. Кто знает аналогичные решения или как оставить пользователя в том же месте? Спасибо

Answer 1

Можно после закрытия вернуть пользователя на то же место где остановились. В переменную js нужно записывать положение скрола, когда меню закрывается плавно промотать страницу на прежнее положение с помощью того же js. Но это похоже на костыль...

READ ALSO
Есть ли возможность скрыть элементы, которые находятся за объектом?

Есть ли возможность скрыть элементы, которые находятся за объектом?

У меня есть header прозрачныйКогда я прокручиваяю страницу я хочу скрыть элементы, которые находятся за header

94
Отменить padding родителя

Отменить padding родителя

Как отменить padding родителя для img, но оставить его для текста, разметить тегами текст невозможноЧто можно сделать с img чтобы он не наследовал...

119
Слайдер изображений для сайта в модальном окне

Слайдер изображений для сайта в модальном окне

Делаю собственный слайдер изображений без сторонних плагинов на JQUERY и столкнулся с такой проблемой: Если на странице более одного элемента,...

102
Ширина flex элемента по его содержимому?

Ширина flex элемента по его содержимому?

Вот есть такой кодВ нём флекс элементы имеют высоту по его содержимому, но при этом расположение элементов растягивается на высоту флекс...

87