ElementUI的el-table表格使用cell-style根据表格不同数据显示不同颜色

ElementUI的el-table表格使用cell-style根据表格不同数据显示不同颜色

1.为某一行指定样式

在这里插入图片描述

在表格中添加属性

在el-table标签中添加 :cell-style=“cellStayle”

      <el-table
        :data="tableData"
        stripe
        class=""
        style="width: 100%"
        :cell-style="cellStayle"
      >
        <el-table-column type="index" width="50" label="序号"></el-table-column>
        <el-table-column prop="regionIndexName" label="所属区域"></el-table-column>
      </el-table>

写入方法
cellStayle(row , colum , rowIndex , columnIndex) {
    if (row.row.viewFlag == "1") {
        return "color : Silver";
    }
    // row.row.viewFlag 为tableData中的属性
},

2.对某一格修改样式

在这里插入图片描述

如果要针对某一单元格进行修改的话只需将判断条件设置为其属性进行判断即可,代码如下

cellStayle(row , colum , rowIndex , columnIndex) {
    if (row.row.viewFlag == "1" && row.colum.label == '所属组织') {
        return "color : Silver";
    }
},

如此便可将某一单元格的样式进行修改。

### 实现 Vue2 和 ElementUI 中 `el-table` 的表头冻结与吸顶效果 为了实现 `el-table` 表头的冻结和吸顶效果,可以结合 CSS 属性 `position: sticky` 来完成。以下是具体的实现方法: #### HTML 结构 通过设置 `class-name` 属性为指定列添加样式类名 `.sticky`,并定义其子元素 `.cell` 使用 `position: sticky`。 ```html <el-table :data="tableData" style="width: 100%"> <el-table-column prop="id" label="ID" width="180" class-name="sticky"> <template slot-scope="scope"> <p>{{ scope.row.id }}</p> </template> </el-table-column> <el-table-column prop="name" label="Name" width="180"></el-table-column> <el-table-column prop="address" label="Address"></el-table-column> </el-table> ``` #### CSS 样式 针对 `.sticky` 类及其内部的单元格应用粘性定位,并调整垂直对齐方式以解决初始位置偏移的问题。 ```css .sticky { vertical-align: top !important; } .sticky .cell { position: sticky; background-color: white; /* 防止背景透明 */ z-index: 999; /* 提升层级防止被覆盖 */ top: 0; /* 设置吸顶距离顶部的位置 */ } ``` 上述代码片段实现了第一列的吸顶效果[^1]。当页面发生滚动时,该列始终保持在视图顶端而不消失。 #### JavaScript 数据源示例 提供一个简单的表格数据结构供测试使用。 ```javascript export default { data() { return { tableData: [ { id: '1', name: 'Tom', address: 'No. 189, Grove St, NY' }, { id: '2', name: 'Jerry', address: 'No. 189, Grove St, NY' }, { id: '3', name: 'Spike', address: 'No. 189, Grove St, NY' } ] }; } }; ``` 此配置文件展示了如何初始化包含三行记录的基础数据集用于渲染表格内容。 --- ### 注意事项 - **浏览器兼容性**:需确认目标用户的主流浏览器是否完全支持 `position: sticky` 特性。 - **性能优化**:对于大数据量场景下频繁触发重绘可能导致卡顿现象,则应考虑虚拟化方案来提升用户体验[^2]。 ---
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值