Я намагаюся відключити X прокрутки на Safari 9 (OS X El Capitan) з наступним кодом, але він не працює, він працює на Firefox і Chrome, але Safari все ще прокручується, хто може мені допомогти?
Мій CSS-код:
html, body
{
overflow-x: hidden
}
Мій код JavaScript:
function disableX(e)
{
if(scrollX > 0)
{
e.preventDefault();
e.stopPropagation();
}
}
addEventListener("scroll", disableX);
Відповіді:
0 для відповіді № 1Спробуйте додати! Important, інакше відкрийте інструменти chrome dev, щоб дізнатися, які властивості використовують.
0 для відповіді № 2
add position: relative; до тіла
body {
position:relative;
overflow-x:hidden;
}
Більше інформації про: Safari Oveflow прихована проблема
0 для відповіді № 3
Але overflow-x: hidden;
на body
і html
дійсно не має такого сенсу, тобто якщо є є щось інше, щоб побачити, користувач повинен бути в змозі побачити його, і я думаю, що це причина Safari запобігає цьому.
Можливо, ви повинні застосувати цю настройку до деякого елемента трохи нижче в ієрархії DOM.
---> Відредагована частина: Я мав на увазі: Вилучити ці правила з body
і html
, покладіть DIV безпосередньо всередину <body>
(тобто обгортку для всього) і застосуйте своє правило переповнення до цього DIV.