Почему это переполнение: скрыто; не работает в сафари? И как это исправить, не теряя положения прокрутки?CSS

Разбираемся в CSS
Ответить
Anonymous
 Почему это переполнение: скрыто; не работает в сафари? И как это исправить, не теряя положения прокрутки?

Сообщение Anonymous »


Код: Выделить всё

// Function to handle opening the search
window.handleCustomSearchOpen = function () {
document.body.classList.add('opensearchpanel');
};

// Function to handle closing the search
window.handleCustomSearchClose = function () {
console.log("Search closed", scrollY);
document.body.classList.remove('opensearchpanel');
};

Код: Выделить всё

.opensearchpanel {
overflow: hidden;
position: fixed;
height: 100%;
width: 100%;
}


На мобильном телефоне у меня есть панель поиска, и когда она открывается, она добавляет класс «opensearchpanel». В котором я использую переполнение: скрыто; и он работает должным образом в Chrome и Android, исправив прокрутку. Но в Safari это не работает, и чтобы это исправить, я добавил
Он исправил проблему с прокруткой, но теперь, добавив его, я теряю позицию прокрутки в той позиции, где находился пользователь, она прокручивается экран вверх, и я этого не хочу. Я хочу, чтобы где бы ни находился пользователь, он должен был находиться на своем месте на экране, и экран должен зависать, что означает, что он не должен прокручиваться до тех пор, пока поиск не будет закрыт.
Я также использовал положение: относительное ; вместо фиксированного

Подробнее здесь: https://stackoverflow.com/questions/793 ... -way-to-fi
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «CSS»