首先看,网上搜到的方法:
.el-table--border:after,.el-table--group:after,.el-table:before {
background-color: red;
}
.el-table--border,.el-table--group {
border-color: red;
}
.el-table td,.el-table th.is-leaf {
border-bottom: 1px solid red;
}
.el-table--border th,.el-table--border th.gutter:last-of-type {
border-bottom: 1px solid red;
}
.el-table--border td,.el-table--border th {
border-right: 1px solid red;
}
亲测,没有用,可能是element-ui的版本不一样,我这打开ElTableBody相关代码,发现:
render(h) {
const data = this.data || [];
return (
<table
class="el-table__body"
cellspacing="0"
cellpadding="0"
border="0">
这里border=“0”,所以上面的设置,是不会起作用的。
然后,根据源代码及也参考了上面的修改,经多方测试,得到修改方法如下:
.el-table th {
border: 1px solid black;
}
.el-table td {
border: 1px solid black;
color: black;
}
.el-table__empty-block {
border-left: 1px solid black;
border-top: 1px solid black;
}
.el-table{
color: black;
}
</style>
<style scoped>
.el-table {
border-right: 1px solid black;
border-bottom: 1px solid black;
}
.el-table td 与.el-table th就可以画出大部分边线,只有table的左边跟下面的线没有,然后对.el-table右下添加划线即可,注意只有这部分(必须)放在style scoped中,其它的都需要放在style中。
.el-table__empty-block 是空表时缺少的两条线
.el-table{ color: black;} 是字体颜色。
这里用border,相当于直接替换上面的border=“0”,如果改为border-color之类,由于tablebody已经设置border=“0”,设置不会生效。
对应版本: “element-ui”: “^2.15.6”,