html设置Qwebview滚动条的样式风格

今天有点空闲,想起来上次有个QWebview的滚动条的style,一直都没有实现,就用html5试了一下,
虽然不好看,也有好几个功能还没有实现,现在将自己写的分享出来,大神勿喷,还望不吝赐教。
先看看一些滚动条设置的属性:
1.overFlow: 
visible却省值,没有DIV滚动条,根据内容自动扩撑区域的大小,即定义的区域无效 
scroll总是显示滚动条 
hidden没有滚动条,超出区域的内容不可见 
auto根据内容自动判断是否添加滚动条 


2.
overflow-x:hidden;                /*隐藏底部的横向滚动条*/
scrollbar-arrow-color: #f4ae21;   /*三角箭头的颜色*/
scrollbar-face-color: #333;       /*立体滚动条的颜色*/
scrollbar-3dlight-color: #666;    /*立体滚动条亮边的颜色*/
scrollbar-highlight-color: #666;  /*滚动条空白部分的颜色*/
scrollbar-shadow-color: #999;     /*立体滚动条阴影的颜色*/
scrollbar-darkshadow-color: #666; /*滚动条强阴影颜色*/
scrollbar-track-color: #666;      /*立体滚动条背景颜色*/
scrollbar-base-color: #f8f8f8;    /*滚动条的基本颜色*/



3.overFlow-xoverFlow-y 
visible却省值,没有DIV滚动条,根据内容自动扩撑区域的大小,即定义的区域无效 
scroll总是显示滚动条 
hidden没有DIV滚动条,超出区域的内容不可见 
auto根据内容自动判断是否添加滚动条

再上实际效果图:
这里写图片描述
再来看看源代码:

::-webkit-scrollbar{
    color:white;
    background-color:white;
    width:10px;
    height:5px;
    min-height:20px;
    -webkit-box-shadow:2px 2px 6px rgba(0,0,0,0.2) inset;
}

::-webkit-scrollbar-track{
    background:transparent;
    //-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); 
    -webkit-border-radius: 10px;
    border-radius: 10px;    
}
//滚动条的Face style 和后面的槽
::-webkit-scrollbar-thumb{
    border-radius:8px;
    background:-webkit-linear-gradient(white, #efefef 80%, white);
    -webkit-box-shadow:2px 2px 6px rgba(0,0,0,0.5),inset -2px 2px 2px rgba(204,204,204,0.1),inset 2px -2px 2px rgba(0,0,0,0.2),inset 2px 2px -2px rgba(204,204,204,0.2);
}
//不知道为什么,这一行好像没有用
::-webkit-scrollbar-thumb:hover{
    background:-webkit-linear-gradient(read);
    min-height:20;
}
//鼠标按下去后滚动条style
::-webkit-scrollbar-thumb:active{
    background:-webkit-linear-gradient(#efefef, #efefef);
}

另外,附加一份QListWidget滚动条的style:
QListWidget的滚动条的style可以直接在样式表里面设置,setStyleSheet();函数设置他的样式表。

// 设置垂直滚动条基本样式
QScrollBar:vertical
{
    width:8px;
    background:rgba(0,0,0,0%);
    margin:0px,0px,0px,0px;
    padding-top:9px;   // 留出9px给上面和下面的箭头
    padding-bottom:9px;
}
QScrollBar::handle:vertical
{
    width:8px;
    background:rgba(0,0,0,25%);
    border-radius:4px;   // 滚动条两端变成椭圆
    min-height:20;
}
QScrollBar::handle:vertical:hover
{
    width:8px;
    background:rgba(0,0,0,50%);   // 鼠标放到滚动条上的时候,颜色变深
    border-radius:4px;
    min-height:20;
}
QScrollBar::add-line:vertical   // 这个应该是设置下箭头的,3.png就是箭头
{
    height:9px;width:8px;
    border-image:url(:/images/a/3.png);
    subcontrol-position:bottom;
}
QScrollBar::sub-line:vertical   // 设置上箭头
{
    height:9px;width:8px;
    border-image:url(:/images/a/1.png);
    subcontrol-position:top;
}
QScrollBar::add-line:vertical:hover   // 当鼠标放到下箭头上的时候
{
    height:9px;width:8px;
    border-image:url(:/images/a/4.png);
    subcontrol-position:bottom;
}
QScrollBar::sub-line:vertical:hover  // 当鼠标放到下箭头上的时候
{
    height:9px;width:8px;
    border-image:url(:/images/a/2.png);
    subcontrol-position:top;
}
QScrollBar::add-page:vertical,QScrollBar::sub-page:vertical   // 当滚动条滚动的时候,上面的部分和下面的部分
{
    background:rgba(0,0,0,10%);
    border-radius:4px;
}

当然也可以用加载文件的方式来设置滚动条的style。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值