一个小难点要设置一个类似于页面的滚动条,你知道吗?

  今天在写一个项目的时候遇到了,这样一个小难点

  要设置一个类似于页面的滚动条,查阅了相关文档之后,我会了

  一、我们可以使用overflow属性设置是否出现滚动条overflow:scroll / x y 方向都会/

  或者

  overflow-x:scroll /只是x方向/

  或者

  overflow-y:scroll /只是y方向/

  当块级内容区域超出块级元素范围的时候,就会以滚动条的形式展示,你可以滚动里面的内容,里面的内容不会超出块级区域范围。

  二、使用scrollbar属性设置滚动条样式::-webkit-scrollbar 滚动条整体部分

  ::-webkit-scrollbar 滚动条整体部分,可以设置宽度啥的

  ::-webkit-scrollbar-button 滚动条两端的按钮

  ::-webkit-scrollbar-track 外层轨道

  ::-webkit-scrollbar-track-piece 内层轨道,滚动条中间部分(除去)

  ::-webkit-scrollbar-thumb 滚动条里面可以拖动的那个

  ::-webkit-scrollbar-corner 边角

  ::-webkit-resizer 定义右下角拖动块的样式

  详细的css属性

  :horizontal 水平方向的滚动条

  :vertical 垂直 方向的滚动条

  :decrement 应用于按钮和内层轨道(track piece)。它用来指示按钮或者内层轨道是否会减小视窗的位置(比如,垂直滚动条的上面,水平滚动条的左边。)

  :increment decrement类似css改变滚动条颜色,用来指示按钮或内层轨道是否会增大视窗的位置(比如,垂直滚动条的下面和水平滚动条的右边。)

  :start 伪类也应用于按钮和滑块。它用来定义对象是否放到滑块的前面。

  :end 类似于start伪类,标识对象是否放到滑块的后面。

  :double-button 该伪类以用于按钮和内层轨道。用于判断一个按钮是不是放在滚动条同一端的一对按钮中的一个。对于内层轨道来说,它表示内层轨道是否紧靠一对按钮。

  :single-button 类似于double-button伪类。对按钮来说,它用于判断一个按钮是否自己独立的在滚动条的一段。对内层轨道来说,它表示内层轨道是否紧靠一个single-button。

  :no-button 用于内层轨道css改变滚动条颜色,表示内层轨道是否要滚动到滚动条的终端,比如,滚动条两端没有按钮的时候。

  :corner-present 用于所有滚动条轨道,指示滚动条圆角是否显示。

  :window-inactive 用于所有的滚动条轨道,指示应用滚动条的某个页面容器(元素)是否当前被激活。(在webkit最近的版本中,该伪类也可以用于::selection伪元素。webkit团队有计划扩展它并推动成为一个标准的伪类)

  示例:

   /里面的代码可以根据自己需求去进行更改/

    /* 设置滚动条的样式 */
    ::-webkit-scrollbar {
    width:12px;
    }
    /* 滚动槽 */
    ::-webkit-scrollbar-track {
    -webkit-box-shadow:inset006pxrgba(0,0,0,0.3);
    border-radius:10px;
    }
    /* 滚动条滑块 */
    ::-webkit-scrollbar-thumb {
    border-radius:10px;
    background:rgba(0,0,0,0.1);
    -webkit-box-shadow:inset006pxrgba(0,0,0,0.5);
    }
    ::-webkit-scrollbar-thumb:window-inactive {
    background:rgba(255,0,0,0.4);
    }

  示例:定义滚动条高宽及背景高宽分别对应横竖滚动条的尺寸

   ::-webkit-scrollbar{

    width:16px;
    height:16px;
    background-color:#F5F5F5;
    }
    /*定义滚动条轨道
    内阴影+圆角*/
    ::-webkit-scrollbar-track{
    -webkit-box-shadow:inset 0 0 6px rgba(0,0,0,0.3);
    border-radius:10px;
    background-color:#F5F5F5;
    }
    /*定义滑块
    内阴影+圆角*/
    ::-webkit-scrollbar-thumb{
    border-radius:10px;
    -webkit-box-shadow:inset 0 0 6px rgba(0,0,0,.3);
    background-color:#555;
    }

  IE浏览器的滚动条设置

  IE下面就比较简单那了,自定义的项目比较少,全是颜色。

  scrollbar-arrow-color: color; /三角箭头的颜色/scrollbar-face-color: color; /立体滚动条的颜色(包括箭头部分的背景色)/scrollbar-3dlight-color: color; /立体滚动条亮边的颜色/scrollbar-highlight-color: color; /滚动条的高亮颜色(左阴影?)/scrollbar-shadow-color: color; /立体滚动条阴影的颜色/scrollbar-darkshadow-color: color; /立体滚动条外阴影的颜色/scrollbar-track-color: color; /立体滚动条背景颜色/scrollbar-base-color:color; /滚动条的基色/ 三、去除搜索框外面的边框

  添加css属性,这样点击时就不会有蓝色边框了{outline:none;}

文章由官网发布,如若转载,请注明出处:https://www.veimoz.com/1782
0 评论
345

发表评论

!