解决elementui table固定列的时候,滚动条被遮挡无法拖动的问题

时间:2024-11-11 08:26:21

当我们使用element table,有时我们需要部分的列固定,我们就给列添加了 fxied属性,但是这时候你会发现table的横向滚动条根本拖不动,只能在固定列外面 靠点击来让它过来。

查找原因你会发现原来是固定的列把滚动条给挡住了,只有超出固定的部分滚动条才可以拖动。

解决办法:

1.修改el-table__fixed样式

.el-table {
    .el-table__fixed {
      height:auto !important; 
      bottom:17px !important;  
    }
  }

效果:就是设置bottom值,使得不盖住滚动条。缺点:不适用与含有合计的table,如果含有合计,合计也会上移。
在这里插入图片描述

2.修改el-table__body-wrapper样式的层级,随便设个层级就可

 .el-table__body-wrapper{
       z-index: 2
}

效果:解决滚动条被遮住的问题,同时含有合计也适用
缺点:就是表头和合计那部分有阴影,中间的部分没有阴影,不过不影响效果,问题不大。
在这里插入图片描述
在这里插入图片描述

3.在1的基础上,不要el-table默认的合计,自己在el-table标签下添加一行div作为合计,然后需要合计的列自己计算,同时滚动的效果也要和内容同步。

4.增加个全局样式

/* Chrome 滚动条优化 */
div {
  &::-webkit-scrollbar {
    /*滚动条整体样式*/
    width: 8px; /*高宽分别对应横竖滚动条的尺寸*/
    height: 8px;
  }

  &::-webkit-scrollbar-thumb {
    /*滚动条里面小方块*/
    border-radius: 8px;
    background-color: hsla(220, 4%, 58%, 0.3);
    transition: background-color 0.3s;

    &:hover {
      background: #bbb;
    }
  }

  &::-webkit-scrollbar-track {
    /*滚动条里面轨道*/
    background: #ededed;
  }
}

import './styles/'