el-table使用fixed=“right“时固定多列,最左边的左边框不显示

.el-table--border .is-scrolling-right+.el-table__fixed-right{
  border-left:  1px solid #3B4450;
  box-sizing: border-box;
}

离奇的bug

方法2:

调试发现right 减去 2px 也能实现,也就是:

.el-table--border .is-scrolling-right+.el-table__fixed-right{

  // 让right 在原有数值上 -2 
  right: 6px;

}

但我不知道 这个 8px是怎么来的,是否和 项目 个性化的表格有关,不知道是不是动态的right

--------后续修改与发现

方法2出现 的 8px 是我设置的-webkit-scrollbar 滚动条宽度!

方法1 当table 使用左固定列时,会失效,修改如下:

.el-table--border .is-scrolling-right+.el-table__fixed-right,
.el-table--border .is-scrolling-right+.el-table__fixed+.el-table__fixed-right{
  border-left:  1px solid #3B4450;
  box-sizing: border-box;
}

<!--表格--> <el-table ref="tablelist" class="eltable" :data="model.tabledata.list" :height="model.tableheight" size="small" row-key="id" :highlight-current-row="true" @selection-change="handleTableChange" :default-sort="model.sort" @sort-change="sortchange" @row-contextmenu="rightclick" :default-expand-all="(model.config.childs.length>0 || model.config.istree) && model.config.opentable"> <el-table-column v-if="model.config.havecheck" type="selection" width="50" align="center"></el-table-column> <el-table-column v-if="model.config.haveid" type="" fixed="left" prop="id" label="编号" width="70" align="center"></el-table-column> <el-table-column label="明细表" width="80" type="expand"> <template slot-scope="childScope"> <el-table :data="JSON.parse(childScope.row.material)" size="small" class="eltable" :border="true" v-if="JSON.parse(childScope.row.material)&&JSON.parse(childScope.row.material).length" row-key="id"> <el-table-column type="expand" label="二级物料" width="80"> <template slot-scope="childScope1"> <el-table :data="childScope1.row.list" size="small" class="eltable" :border="true" v-if="childScope1.row.list&&childScope1.row.list.length" row-key="id" > <el-table-column label="三级物料" width="80"></el-table-column> <el-table-column label="序号" prop="id"></el-table-column> <el-table-column prop="proname" label="物料名称"></el-table-column> <el-table-column prop="procode" label="成品编码"></el-table-column> <el-table-column prop="specname" label="规格名称"></el-table-column> <el-table-column prop="speccode" label="规格编码"></el-table-column> </el-table> </template> </el-table-column> <el-table-column label="序号" pr
03-28
### 解决 el-table 固定右侧修改滚动条宽度后底部出现多余文字 当处理 `el-table` 的固定,如果调整了滚动条的宽度,可能会遇到表格底部出现多余的空白或文字显示正常的问题。这通常是因为表头和表体之间的宽度计算同步所引起的。 针对此问题,可以通过自定义 CSS 来修正这个问题: #### 自定义样式覆盖默认行为 通过深入定制 `.my-el-table` 类中的样式来确保表头和表体的一致性[^3]。具体来说,可以尝试如下方法: ```css /deep/ .my-el-table { overflow-x: hidden; } /deep/ .el-table__header-wrapper { .el-table__header { width: calc(100% + 32px) !important; } } /deep/ .el-table__body-wrapper { width: calc(100% + 16px) !important; .el-table__body { width: calc(100% + 16px) !important; } } ``` 这段代码的作用在于强制设定表头和表体的实际宽度超出容器边界一定量(分别为32像素和16像素),从而避免由于滚动条的存在而导致的内容错位现象。 另外,对于可能出现的高度变化影响到内容展示完整性的状况,建议检查是否有其他CSS规则干扰到了`.el-table__fixed-right` 或者其父级元素的高度设置。必要可通过增加特定的选择器优先级来进行针对性修复。 后,考虑到浏览器兼容性和渲染差异带来的潜在问题,推荐测试同的浏览器环境,并适当利用开发者工具调试视图模式下的实际表现情况。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值