为什么:el-table自带的滚动条浏览器兼容性不好,尤其是火狐,会显示丑陋的原生滚动条,
而el-scrollbar虽然是js计算组件,但是对浏览器兼容性满足需求
方法:
el-scrollbar包含普通的ul、div元素都能很好的展示滚动条,但是包含el-table如果不做任何处理,el-scrollbar不会生效
分两步进行改造
//禁止eltable的滚动条显示
.el-table--scrollable-x .el-table__body-wrapper{
overflow-x:hidden
}
//禁用el-scrollbar__wrap的横纵滚动条显示,
.el-scrollbar__wrap{
overfow:hidden
}
2.
//因为el-table自带滚动条,所以el-table最外层的div不会溢出,导致el-scrollbar不生效、
需要修改el-table内部属性,使得el-table呈现真实的宽高,让外层的el-scrollbar__view被el-table撑大
最后el-scrollbar__wrap就会出现滚动条
.el-scrollbar .el-scrollbar__wrap .el-scrollbar__view{
display:inline-block;
width:auto !important;
}
.el-table{
width:auto !important;
max-width:auto !important;
display:inline-block !important .el-table__header-wrapper{
display:inline-block !important;
width:auto !important
}
}
//设置inline-block是关键:
如果display是block,宽高会根据父元素自动设定
如果display-inline 宽高会被元素的内容撑开,这样就会形成溢出,最终el-scrollbar__wrap会计算形成滚动条