• 自定义滚动条


    刚刚看了实现了一个自定义滚动条感觉不错,分享一下啦!

       自定义IE浏览器滚动条样式

          

    追溯浏览器对滚动条的自定义,恐怕最早的就是IE浏览器了(好像最开始支持的版本是IE5.5)。下面列出了多个版本的支持性况:

    滚动条样式支持情况支持浏览器版本可否继承描述
    scrollbar-3dlight-color IE特有属性 IE5.5+ y 设置滚动框的和滚动条箭头左上边缘的颜色
    scrollbar-highlight-color IE特有属性 IE5.5+ y 设置滚动框的和滚动条箭头左上边缘的颜色
    scrollbar-face-color IE特有属性 IE5.5+ y 设置滚动框和滚动条箭头的颜色
    scrollbar-arrow-color IE特有属性 IE5.5+ y 设置滚动条箭头的颜色
    scrollbar-shadow-color IE特有属性 IE5.5+ y 设置滚动框的和滚动条箭头右下边缘的颜色
    scrollbar-dark-shadow-color IE特有属性 IE5.5+ y 设置滚动条槽的颜色
    scrollbar-base-color IE特有属性 IE5.5+ y 设置滚动条主要构成部分的颜色
    scrollbar-track-color IE特有属性 IE5.5+ y 设置滚动条轨迹组成部分的颜色

    为了有助于理解IE中滚动条样式的控制,你可以查看如下的图片:

    ie-css-scroll

    经过不断的测试发现,在Win8 下面,有一部分样式都起着相同的作用。估计是因为在Win8中扁平化的界面设计而重新定议了系统中滚动条!以下是Win 8下面的滚动条样式,并写出了和CSS支持的情况:

    win-8--ie---scrollbar

    以上所写的几个四个CSS属性,足以控制Win 8系统下,IE浏览器的滚动条样式了。但经过测试,发现,其它的四个属性仍然支持(主要是在以上几个属性空缺时,就会体现其作用)。具体如下:

    1. 关于scrollbar-track-color,scrollbar-face-color与scrollbar-base-color。直接看英语单词,你就也许能明白scroll-base-color是一个备用颜色,只要前两者未设置时,它就开始起作用了。但是你得注意,当scrollbar-base-color用来作scrollbar-track-color功能来用时,你会发现,实际颜色与设定的颜色要淡一点。不信你可以这样试试:只设置一下scrollbar-base-color看看滚动条的效果。
    2. 关于scrollbar-dark-shadow-color属性,通过测试发现Win 8下IE10,IE11滚动条并没有改变。可能是win 8的滚动条重新定义了,导致没有了隐影了吧!(仅个人猜想)
    3. 通过观察我们发现,Win 8下的滚动条中,上箭头和下箭头后面的背景颜色都已经从scroll-face-color中脱离出来了,从属于scroll-track-color属性控制。

    感觉IE浏览器滚动条自定制功能并不是很强,只能控制一样显示各个部分的颜色而已,像宽度,结构等都无法控制,要靠出个性点的滚动条,很难!很难!!!

      以上都是我从别那里拿来的,不要嘲笑啦,学习要紧!!!

      

    自定义FireFox浏览器滚动条

    在网上找了很多关于Firfox自定义浏览器滚动条的方法,发现firefox中却实是不支持的。发现了几篇说可以更改,自已也跟着代码写了几次(不知是我错了还是。。。),发现却是不起作用。以下是一点小的收获:

    复制
    1. @-moz-document url-prefix(http://),url-prefix(https://) {
    2. /* 滚动条颜色 */
    3. scrollbar {
    4. -moz-appearance: none !important;
    5. background: rgb(0,255,0) !important;
    6. }
    7. /* 滚动条按钮颜色 */
    8. thumb,scrollbarbutton {
    9. -moz-appearance: none !important;
    10. background-color: rgb(0,0,255) !important;
    11. }
    12. /* 鼠标悬停时按钮颜色 */
    13. thumb:hover,scrollbarbutton:hover {
    14. -moz-appearance: none !important;
    15. background-color: rgb(255,0,0) !important;
    16. }
    17. /* 隐藏上下箭头 */
    18. scrollbarbutton {
    19. display: none !important;
    20. }
    21. /* 纵向滚动条宽度 */
    22. scrollbar[orient="vertical"] {
    23. min-width: 15px !important;
    24. }
    25. }

      其实上面的基本都没有用,先讲讲原理,下面的这些属性才是解决问题的关键!

    • ::-webkit-scrollbar        滚动条整体部分,其中的属性有width,height,background,border(就和一个块级元素一样)等。
    • ::-webkit-scrollbar-button      滚动条两端的按钮。可以用display:none让其不显示,也可以添加背景图片,颜色改变显示效果。
    • ::-webkit-scrollbar-track         外层轨道。可以用display:none让其不显示,也可以添加背景图片,颜色改变显示效果。
    • ::-webkit-scrollbar-track-piece        内层轨道,滚动条中间部分(除去)。
    • ::-webkit-scrollbar-thumb               滚动条里面可以拖动的那部分
    • ::-webkit-scrollbar-corner               边角
    • ::-webkit-resizer                       定义右下角拖动块的样式

    注意:对以上各个部分定义width,height时。有如下功能:若是水平滚动条,则width属性不起作用,height属性用来控制滚动条相应部分竖直方向高度;若是竖直滚动条,则height属性不起作用,width属性用来控制相应部分的宽度。

    如果需要其他样式:

      http://manos.malihu.gr/repository/custom-scrollbar/demo/examples/complete_examples.html

      

  • 相关阅读:
    Codeforces Round #632 (Div. 2) D-Challenges in school №41(模拟好题)
    余数求和
    B. 齐心抗疫
    MyBatis源码分析
    关于Idea中右边的maven projects窗口找不到了如何调出来
    IDEA java类文件左下角出现红色的J标识,解决方法
    Postman Tests脚本的使用
    JSONPath解析json
    Postman + Newman 生成测试报告
    TestNG 多线程测试
  • 原文地址:https://www.cnblogs.com/wanghp/p/9647069.html
Copyright © 2020-2023  润新知