css如何实现滚动条隐藏但鼠标仍然可以滚动

  在做移动端项目的时候,有些时候需要元素超出屏幕可以滚动,为了美观需要隐藏滚动条。如果只需兼容chrome和safari,可以使用自定义滚动条的伪对象选择器——::webkit-scrollbar。

  具体使用即: element::webkit-scrollbar{display:none} 或者 element::webkit-scrollbar{width:0!important}

  那要在pc端实现同样的功能怎么办呢?参考Hiding Vertical Scrollbars with Pure CSS in Chrome, IE (6+), Firefox, Opera, and Safari实现如下:

html

<div class="outer-container">
 <div class="inner-container">
 <div class="content">
 Lorem ipsum dolor sit amet, consectetur adipiscing elit.
 Integer vehicula quam nibh, eu tristique tellus dignissim
 quis. Integer condimentum ultrices elit ut mattis.
 Praesent rhoncus tortor metus, nec pellentesque enim
 mattis nec. Nulla vitae turpis ut dui consectetur
 pellentesque quis vel est. Curabitur rutrum, mauris ut
 mollis lobortis, sem est congue lectus, ut sodales nunc
 leo a libero. Cras quis sapien in mi fringilla tempus
 condimentum quis velit. Aliquam id aliquam arcu. Morbi
 tristique aliquam rutrum. Duis tincidunt, orci suscipit
 cursus molestie, purus nisi pharetra dui, tempor
 dignissim felis turpis in mi. Vivamus ullamcorper arcu
 sit amet mauris egestas egestas. Vestibulum turpis neque,
 condimentum a tincidunt quis, molestie vel justo. Sed
 molestie nunc dapibus arcu feugiat, ut sollicitudin metus
 sagittis. Aliquam a volutpat sem. Quisque id magna
 ultrices, lobortis dui eget, pretium libero. Curabitur
 aliquam in ante eu ultricies.

 Quisque vitae tincidunt purus. Vivamus feugiat bibendum
 erat, nec interdum urna porta sed. Nunc lobortis neque
 orci, ut suscipit nisl congue feugiat. Vivamus feugiat
 tellus quis cursus sollicitudin. Curabitur dolor massa,
 dictum ut ipsum in, porttitor pellentesque ante. Aenean
 egestas cursus tempor. Maecenas semper tortor sit amet
 egestas cursus. Mauris porttitor quis nisi ut tincidunt.
 Curabitur adipiscing eleifend nibh. Praesent mauris leo,
 consequat vitae orci eget, vestibulum bibendum nisi.
 Aliquam tempus diam ut tortor cursus, eget sodales augue
 adipiscing. Nulla at dignissim libero.
 </div>
 </div>
 </div>

  css

.content, .outer-container {
 width: 200px;
 height: 200px;
}

.outer-container {
 position: relative;
 overflow: hidden;
}

.inner-container {
 position: absolute;
 left: 0;
 overflow-x: scroll;
 overflow-y: scroll;
}

.inner-container::-webkit-scrollbar {
 display: none;
}

  该方案的实现原理:给外层的div和主要内容的div设置同样的宽高,然后.inner-container设置相对于.outer-container绝对定位,这样.inner-container就脱离了文档流,宽高子元素撑开,额外设置自己的滚动属性,但是由于最外层的div宽高固定,故.inner-container的滚动条看不到,事实上是可以滚动的

时间: 2024-08-25 22:18:32

css如何实现滚动条隐藏但鼠标仍然可以滚动的相关文章

界面控件 - 滚动条ScrollBar(对滚动条消息和鼠标消息结合讲的不错)

界面是人机交互的门户,对产品至关重要.在界面开发中只有想不到没有做不到的,有好的想法,当然要尝试着做出来.对滚动条的扩展,现在有很多类是的例子. VS2015的代码编辑是非常强大的,其中有一个功能可以把滚动态变成MinMap,可以通过Options->Text Editor->C/C++->Scroll Bars中的Behavior选项分类进行打开. sublime也有这个功能,但没有VS的好用.变成MinMap后整个代码文档变成一个完整的缩微图,在你对代码比较熟悉的情况下,可以非常容易

div+css怎么实现滚动条样式

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Typ

DIV css中cursor属性详解-鼠标移到图片变换鼠标形状 (转)

css中cursor属性详解-鼠标移到图片变换鼠标形状 语法: cursor : auto | all-scroll | col-resize| crosshair | default | hand | move | help | no-drop | not-allowed | pointer | progress | row-resize | text | vertical-text | wait | *-resize | url ( url )  取值: auto  :   默认值.浏览器根

MUI组件四:选择器、滚动条、单选框、区域滚动和轮播组件

目录(?)[+] 1.picker(选择器) mui框架扩展了pipcker组件,可用于弹出选择器,在各平台上都有统一表现.poppicker和dtpicker是对picker的具体实现.*poppicker组件依赖mui.picker.js/.css mui.poppicker.js/.css请务必在mui.js/css后中引用,也可统一引用 压缩版本:mui.picker.min.js (1).popPicker 适用于弹出单级或多级选择器 a.通过new mui.PopPicker()初始

js鼠标滚轮上下滚动监听事件应用实例(跨浏览器,亲测)

最近做项目涉及到多个DIV切换效果,包括普通按钮点击切换和鼠标滚轮上下滚动切换等:其主要涉及到的内容就是鼠标滚轮上下切换的事件监听,此处是第一次接触到,故在此记录一下:也希望能帮到各位有需要的朋友. 以下为项目实例: $(function() { var count = $("#sysCount").val();    var isUp = false; // 初始化子系统模块    if (count > 6) {        $("#panel").cs

鼠标触及连接滚动提示信息

<html> <head> <title>鼠标触及连接滚动提示信息-石家庄瑜伽馆</title> </head><body> <!--将以下代码加入HTML的<Body></Body>之间--> <style type="text/css"> <!-- a:link { color: #0020FF; text-decoration: none;font-siz

jq鼠标点击滚动锚点

鼠标点击滚动锚点 //滚动锚点 $('.menus-c ul li a').click(function(){ //alert(); $('html, body').animate({ scrollTop: $( $.attr(this, 'href') ).offset().top }, 500); return false; }); 以上代码,代表点击.menus-c ul li a的时候,获取a的href(href的值等于#id)就会自动滑动了.

纯css,div隐藏滚动条,保留鼠标滚动效果。

代码如下: <!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <style type="text/css&qu

css实现无(隐藏)滚动条页面

实现功能:隐藏浏览器滚动条,且不影响鼠标滚轮滚动页面适用:以大图片为背景或产品介绍页面(如果和视差滚动一起使用应该会效果更佳)所需技术:非常简单的css和js 首先来看下对比效果(图1 => 图2,两者都能通过鼠标滚轮进行内容的滚动) (图1) (图2) 可以明显的看到:图2的正文宽度明显比图1的宽度小,并发生了向右的偏移.这就是无滚动条页面的基本原理:移动(设置)正文的偏移量(margin/padding),使正文的滚动条出现在父节点可是范围的外面,以达到无滚动条的效果 代码实现HTML节点可