el-table固定列不能跟随表格纵向滚动

el-table滚动表格,设置固定列之后,固定列不会随着表格Y轴滚动。

表体单独设置了高度,固定列没有设置导致的问题。关键代码就是新增的那段代码。

 

### 解决 Element-UI `el-table` 固定纵向滚动条导致的表格错位问题 对于 `el-table` 组件中的固定纵向滚动条组合使用时可能出现的表头错位现象,可以通过调整 CSS 和 JavaScript 来解决问题。 #### 方法一:CSS 方案 通过修改 `.el-table--scrollable-y .el-table__body-wrapper.is-scrolling-right` 的宽度来适应滚动条的存在。具体做法是在项目中加入如下全局样式: ```css /* 增加额外空间以容纳垂直滚动条 */ .el-table--scrollable-y .el-table__body-wrapper.is-scrolling-right { width: calc(100% + 6px); /* 6px 是竖向滚动条的大致宽度 */ } ``` 此方法适用于大多数场景下的简单修正[^1]。 #### 方法二:JavaScript 动态处理 当页面加载完毕或数据更新后调用 `doLayout()` 函数可以强制刷新表格布局,从而避免由于 DOM 变化引起的渲染错误。可以在组件内定义一个初始化函数,在获取到最新数据显示之前执行该命令: ```javascript init() { const _self = this; this.$nextTick(() => { setTimeout(() => { // 'tableref' 应替换为你实际给 el-table 设置的 ref 属性值 _self.$refs.tableref.doLayout(); }, 100); }); } ``` 这种方法能够有效应对动态变化的数据集带来的潜在错位风险[^4]。 #### 特殊情况——右侧行动栏固定 如果存在最右边固定的行动栏,则可能还需要特别针对`.el-table__fixed-right` 进行优化设置,防止其覆盖水平方向上的滚动条: ```css /* 避免右侧固定遮挡横向滚动条 */ .el-table__fixed-right::before { content: ""; height: 100%; position: absolute; top: 0; right: -17px; /* 根据实际情况微调这个数值 */ pointer-events: none; } ``` 以上措施综合应用通常能较好地解决因固定配合纵向滚动条而引发的各种视觉异常状况[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值