Поведение WebKit / Blink (Safari / Chrome) по умолчанию в MacOS начиная с 10.7 (Mac OS X Lion) заключается в том, чтобы скрывать полосы прокрутки от пользователей трекпада, когда они не используются. Это может сбивать с толку ; полоса прокрутки часто является единственной визуальной подсказкой, что элемент можно прокручивать.
Пример ( jsfiddle )
HTML<div class="frame">
Foo<br />
Bar<br />
Baz<br />
Help I'm trapped in an HTML factory!
</div>
CSS
.frame {
overflow-y: auto;
border: 1px solid black;
height: 3em;
width: 10em;
line-height: 1em;
}
Скриншот WebKit (Chrome)
Скриншот Presto (Opera)
Как заставить полосу прокрутки всегда отображаться на прокручиваемом элементе в WebKit?
Ответы:
Появление полос прокрутки можно управлять с помощью WebKit в
-webkit-scrollbar
псевдо-элементах [ блог ] . Вы можете отключить внешний вид и поведение по умолчанию, установив для-webkit-appearance
[ docs ] значениеnone
.Поскольку вы удаляете стиль по умолчанию, вам также нужно указать стиль самостоятельно, иначе полоса прокрутки никогда не появится. Следующий CSS воссоздает внешний вид скрытых полос прокрутки:
Пример ( jsfiddle )
CSS Скриншот WebKit (Chrome)источник
.frame::-webkit-scrollbar-track { background-color: #FFF; border-radius: 8px; }
Для одностраничного веб-приложения, в котором я динамически добавляю прокручиваемые разделы, я запускаю полосы прокрутки OSX, программно прокручивая один пиксель вниз и обратно:
Это вызывает появление и исчезновение визуального сигнала.
источник
Вот небольшой фрагмент кода, который включает полосы прокрутки по всему сайту. Я не уверен, сильно ли он отличается от текущего самого популярного ответа, но вот он:
Нашел по этой ссылке: http://simurai.com/blog/2011/07/26/webkit-scrollbar
источник
Полосы прокрутки браузера вообще не работают на iPhone / iPad. На работе мы используем пользовательские полосы прокрутки JavaScript, такие как jScrollPane, для обеспечения согласованного кросс-браузерного интерфейса: http://jscrollpane.kelvinluck.com/
Это работает очень хорошо для меня - вы можете сделать несколько действительно красивых полос прокрутки, которые соответствуют дизайну вашего сайта.
источник
Другим хорошим способом работы со скрытыми полосами прокрутки Lion является отображение подсказки для прокрутки вниз. Он не работает с небольшими областями прокрутки, такими как текстовые поля, но хорошо работает с большими областями прокрутки и сохраняет общий стиль сайта. Один сайт, который делает это, - http://versusio.com , просто проверьте страницу этого примера и подождите 1,5 секунды, чтобы увидеть подсказку:
http://versusio.com/en/samsung-galaxy-nexus-32gb-vs-apple-iphone-4s-64gb
Реализация не сложна, но вы должны позаботиться о том, чтобы вы не отображали подсказку, когда пользователь уже прокрутил.
Вам нужен JQuery + Подчеркнуть и
$(window).scroll
чтобы проверить, прокручивал ли пользователь сам,_.delay()
вызвать задержку перед отображением подсказки - подсказка не должна быть навязчивой$('#prompt_div').fadeIn('slow')
исчезать в вашей подсказке и, конечно,$('#prompt_div').fadeOut('slow')
исчезать, когда пользователь прокручивал после того, как увидел подсказкуКроме того, вы можете связать события Google Analytics, чтобы отслеживать поведение пользователя при прокрутке.
источник