Vue - 我如何设置 Element-UI 数据表的样式?

Vue - how can i style an Element-UI datatable?

我正在尝试将 element ui datatable 添加到我的项目中,但我很难弄清楚如何更改 table 的颜色。这是我拥有的:

<template>
  <el-table
    :data="tableData.filter(data => !search || data.name.toLowerCase().includes(search.toLowerCase()))"
    style="width: 100%">
    <el-table-column
      label="Date"
      prop="date">
    </el-table-column>
    <el-table-column
      label="Name"
      prop="name">
    </el-table-column>
    <el-table-column
      align="right">
      <template slot="header" slot-scope="scope">
        <el-input
          v-model="search"
          size="mini"
          placeholder="Type to search"/>
      </template>
      <template slot-scope="scope">
        <el-button
          size="mini"
          @click="handleEdit(scope.$index, scope.row)">Edit</el-button>
        <el-button
          size="mini"
          type="danger"
          @click="handleDelete(scope.$index, scope.row)">Delete</el-button>
      </template>
    </el-table-column>
  </el-table>
</template>

<style>

.thead {
  color: red;
}
.el-table thead {
  color: red;
}

</style>

<script>

export default {

  props:{


  },

  data() {
      return {
        tableData: [{
          date: '2016-05-03',
          name: 'Tom',
          address: 'No. 189, Grove St, Los Angeles'
        }, {
          date: '2016-05-02',
          name: 'John',
          address: 'No. 189, Grove St, Los Angeles'
        }, {
          date: '2016-05-04',
          name: 'Morgan',
          address: 'No. 189, Grove St, Los Angeles'
        }, {
          date: '2016-05-01',
          name: 'Jessy',
          address: 'No. 189, Grove St, Los Angeles'
        }],

        search: '',
      }
    },

    methods: {
      handleEdit(index, row) {
        console.log(index, row.name);
      },
      handleDelete(index, row) {
        console.log(index, row.name);
      }
    },
  

}

</script>

我在这里尝试的一切似乎对 table 没有任何影响,没有任何变化。我也尝试使用 background-color 或其他 类,例如 .el-table,但没有任何效果。感谢任何类型的建议

设置 table 背景颜色无效,因为默认情况下,行的背景颜色显示在顶部。数据 table 提供 multiple props 样式,或者您可以直接在 CSS 中定位行。无论哪种情况,您似乎都需要 !important 修饰符,否则它不会覆盖默认样式:

选项 1:使用类似 row-class-name:

的道具
<el-table
  row-class-name="myrow"
>
.myrow {
  background-color: red !important;
}

选项 2:直接使用 tr(或 tdth 等)修改 CSS

.el-table tr {
  background-color: red !important;
}

(如果直接修改,您可以使用更具体的选择器来避免需要 !important,如果这对您很重要。)

试试深度选择器

.variableName>>>.el-table{
  background-color: red !important;
}
.variableName/deep/.el-table{
  background-color: red !important;
}