el-table如果需要表头可拖动就需要加上border属性,但是加上border属性可能会出现一些不愿看到的样式,如下图所示
怎么样去掉那些多余的边框线呢?
1、打开f12来找对应的样式
(1)下边框样式
从图中可以看出这条边框的样式是
.el-table::before { left: 0; bottom: 0; width: 100%; height: 1px; }
要想去掉这条线,可以设置
height: 0px;
(2)右边框线
从图中可以看出有效样式是
.el-table--border::after { top: 0; right: 0; width: 1px; height: 100%; }
想要去掉这条边框线,可以设置
width: 0px;
(3)左和上的,找不到明确的,只能找范围,仔细看
找了挺久,最后发现上和左的都是这个样式设置的
.el-table--border { border: 1px solid #dfe6ec; }
想要去掉,可以设置
.el-table--border { border: none; }
或者
.el-table--border { border: 0px; }
2、综上,样式设置为
.el-table::before { height: 0px; } .el-table--border::after { width: 0px; } .el-table--border { border: none; }
3、或许会有人觉得,可能只需要设置
.el-table--border { border: none; }
就可以了,实际上是不行的
所以那三个class的样式都要设置。
4、可以设置在<style></style>里面,也可以设置在<style scoped></style>里面。
我都测试过了,可行
5、<style scoped>的意义
这里就大概说一下,scoped 修饰的style只给当前组件内的元素使用,而通过slot插槽插进来的元素,scoped就管不到了。
参考连接:https://www.cnblogs.com/zhenhunfan2/p/13879376.html
或者你可以百度一下style scoped的意义