[记录]修改el-table边框颜色

首先看,网上搜到的方法:

.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”,


版权声明:本文为dingpwen原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。