inset 15px 0px 15px -15px rgba(34,39,238,41), /*左边阴影 蓝色#2279ee*/ inset -15px 0px 15px -15px rgba(93,93,93,41); /*右边阴影*/
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> *{padding: 0;margin: 0;list-style: none;} #box{width: 792px;height: 300px;border: 1px solid #ddd;margin: 100px auto;position: relative;overflow: hidden; box-shadow: /*inset 15px 0px 15px -15px rgba(34,39,238,41), 左边阴影 蓝色#2279ee*/ /*inset -15px 0px 15px -15px rgba(93,93,93,41); 右边阴影*/ } #box_top{position: absolute;left:0;top:20px;} #box_top li{float: left; white-space: nowrap;} #box_bottom{width: 100%;position: absolute;left: 0;bottom: 0;background: #e8e8e8;height: 25px;} #mask{height: 25px;background: orangered;border-radius: 12px;position: absolute;left: 0;top: 0;cursor: pointer;} /*#box_top li img{ -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }*/ </style> </head> <body> <div id="box"> <ul id="box_top"> <li>PingWest品玩7月10讯,根据路透社报道,美国商务部长威尔伯·罗斯(Wilbur Ross)表示,美国商务部将在不危及美国国家安全的情况下,向华为的美国供应商发放许可证。罗斯表示,华为仍在实体清单中,并且禁止的项目范围也不会改变,这意味着申请许可证可能会被拒绝,但此次打开了申请许可证的大门。报道称,行业观察人士表示目前对实际政策的范围以及哪些类型将被批准或被拒绝尚不清楚,只能通过提交申请来确定。</li> </ul> <div id="box_bottom"> <span id="mask"></span> </div> </div> <script type="text/javascript"> window.onload = function(){ var box = document.getElementById("box") var box_top = document.getElementById("box_top") var box_bottom = document.getElementById("box_bottom") var mask = document.getElementById("mask") // 获取内容的总宽度 var li= box_top.children[0] console.log(li.offsetWidth) var liL = box_top.children[0].offsetWidth box_top.style.width = liL + "px" // 滚动条的长度 = (盒子的宽度 / 内容的宽度)*盒子的宽度 var mask_len = (box.offsetWidth / box_top.offsetWidth)*box.offsetWidth mask.style.width = mask_len + "px" if(box_top.offsetWidth > box.offsetWidth){ box.style.boxShadow = 'inset -15px 0px 15px -15px rgba(93,93,93,41)'; mask.style.display = ''; box_bottom = 'none'; }else{ box.style.boxShadow = ''; mask.style.display = 'none'; box_bottom = 'none'; } // 鼠标操作 mask.onmousedown = function(e){ e = e || event var beginX = e.clientX - mask.offsetLeft document.onmousemove = function(e){ e = e || event var endX = e.clientX - beginX if(endX < 0){ endX = 0 } if(endX >= box.offsetWidth - mask.offsetWidth){ endX = box.offsetWidth - mask.offsetWidth } mask.style.left = endX + "px" console.log('beginX = ' + beginX); console.log('endX = ' + endX); if(endX == 0){ box.style.boxShadow = 'inset -15px 0px 15px -15px rgba(93,93,93,41)'; }else if(endX > 0 && endX < box.offsetWidth - mask.offsetWidth){ box.style.boxShadow = 'inset 15px 0px 15px -15px rgba(34,39,238,41), inset -15px 0px 15px -15px rgba(93,93,93,41)'; }else if (endX == box.offsetWidth - mask.offsetWidth){ box.style.boxShadow = 'inset 15px 0px 15px -15px rgba(34,39,238,41)'; }else{ box.style.boxShadow = 'inset 15px 0px 15px -15px rgba(34,39,238,41), inset -15px 0px 15px -15px rgba(93,93,93,41)'; } // 内容走的距离 = (内容的长度 - 盒子的长度 )/ (盒子的长度 - 滚动条的长度)*滚动条走的距离 var contentL = (box_top.offsetWidth - box.offsetWidth)/(box.offsetWidth - mask.offsetWidth)*endX box_top.style.left = -contentL + "px" window.getSelection?window.getSelection().removeAllRanges():document.selection.empty()//防止拖动时选中内容 } document.onmouseup= function(e){ e = e || event document.onmousemove = null } } } </script> </body> </html>
参考:
相关推荐
div滚动条样式一览-div+css设计网,div滚动条,多个div滚动条样式
手机端加滚动条iscroll-lite
外部滚动条控制iframe外部滚动条控制iframe
滚动条闪动的控制.rar滚动条闪动的控制.rar滚动条闪动的控制.rar滚动条闪动的控制.rar滚动条闪动的控制.rar滚动条闪动的控制.rar
今天给大家介绍一款功能强大的jquery.nicescroll插件,主要用户自定义个滚动条效果,使用方法非常简单,只需要将jquery库以及本插件引入页面中(要在效果之前引用),然后用一段JS调用即可 本案例适合手机客户端,可以...
js实现textArea滚动条样式,兼容多种浏览器
即使未显示滚动条(例如,在触摸输入设备上),或仅在滚动时显示(macOS默认),这仍指示可滚动的内容。 。安装# With npm:npm install scroll-shadow-element# With Yarn:yarn add scroll-shadow-element 或直接从...
一个非常强大的基于 jQuery 的滚动条插件,不需要增加额外的css,几乎全浏览器兼容.兼容其他插件、只需要引入下 初始化一下就可以生效了
自定义滚动条样式-精品源代码 自定义滚动条样式-精品源代码
这是用js实现的在页面左侧实现纹理滚动条---
JS--几种滚动条方式,JS--几种滚动条方式,JS--几种滚动条方式
滚动条--触底demo
Qt悬浮滚动条-滚动条样式,实现滚动条不占用控件的宽高,深度美化滚动条以及Qt滚动条的使用体验
自定义列表并在存在滚动时插入阴影的组件 安装 npm i react-shadow-scroll // OR yarn add react-shadow-scroll 演示 本地演示: git clone https://github.com/andrelmlins/react-shadow-scroll.git cd react-...
js 模拟滚动条js 模拟滚动条js 模拟滚动条js 模拟滚动条
JS 类似BBS控制输入框输入信息后,滚动条自动滚到最下方,始终显示最后输入的一条信息,在做BBS的兄弟,可以参考一下思想
flash滚动条加动态文本-源码,例子,本人调试通过,可以直接使用。
js实现简易可拖动滚动条,可自行修改样式和赋值,无需引入文件。 js实现简易可拖动滚动条,可自行修改样式和赋值,无需引入文件。 js实现简易可拖动滚动条,可自行修改样式和赋值,无需引入文件。
滚动条控制滚动条控制滚动条控制滚动条控制
简单易用的图片文字滚动插件--jQuery Scrollbox.rar简单易用的图片文字滚动插件--jQuery Scrollbox.rar简单易用的图片文字滚动插件--jQuery Scrollbox.rar简单易用的图片文字滚动插件--jQuery Scrollbox.rar简单易用...