自10.7(Mac OS X Lion)以来MacOS上的WebKit/Blink(Safari/Chrome)默认行为是在不使用触控板用户时隐藏滚动条.这可能令人困惑 ; 滚动条通常是元素可滚动的唯一视觉提示.
<div class="frame">
Foo<br />
Bar<br />
Baz<br />
Help I'm trapped in an HTML factory!
</div>
Run Code Online (Sandbox Code Playgroud)
CSS
.frame {
overflow-y: auto;
border: 1px solid black;
height: 3em;
width: 10em;
line-height: 1em;
}?
Run Code Online (Sandbox Code Playgroud)
WebKit(Chrome)截图


如何强制滚动条始终显示在WebKit中的可滚动元素上?
此代码适用于样式滚动条:
.frame::-webkit-scrollbar {
-webkit-appearance: none;
background-color: #000;
}
.frame::-webkit-scrollbar:horizontal {
height: 6px;
}
.frame::-webkit-scrollbar-thumb {
background-color: #000;
}
.frame::-webkit-scrollbar-track {
-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
background-color: #333;
}
Run Code Online (Sandbox Code Playgroud)
但每次我想让它启用触摸(为了在移动滚动中缓和),所有滚动条都会消失
.frame {
-webkit-overflow-scrolling: touch;
}
Run Code Online (Sandbox Code Playgroud)
任何解决方案,以保持滚动条在iOS或手机?