解决element-plus table组件 fixed=“right“(left)浮动后横向滚动文字穿透的问题

BUG

版本:element-plus 2.6.1

浏览器:360极速浏览器22.1 (Chromium内核)

组件:el-table组件

问题:在头部/尾部浮动加上斑马条纹后,横向滚动存在文字穿透的问题。具体如图:

白色背景行的文字,在滚动时,发生了穿透

解析

目前神奇的是,在灰色背景条纹行,文字没有穿透

查看生成结构,偶数行是这个样式控制的

看看el-table__row--striped的作用:

也就是说el-table__row--striped给下级所有的table_cell补了个底色。

而默认是什么颜色呢,看看没有el-table__row--striped作用的:

是继承上级tr的透明背景色,难怪叠加起来文字会重叠,背景透明不重叠才怪

解决

找到问题后,解决方案也很简单。在scss里给非strip的行补一个样式就好:

css 复制代码
<style lang="scss">
.cc-list-view {
  .el-table__header {
    background-color: var(--el-background-color-base);
  }

  tr.el-table__row {
    /* 解决横向滚动文字穿透的问题 */
    &.el-table__row--striped {
      .el-table__cell {
        background-color: var(--el-table-row-hover-bg-color) !important;
      }
    }
    &:not(.el-table__row--striped) {
      background-color: var(--el-bg-color) !important;
    }
  }
}
</style>

再看已经正常了

相关推荐
CappuccinoRose6 小时前
CSS 语法学习文档(十三)
前端·css·学习·postcss·模块化·预处理器
css趣多多14 小时前
vue2项目改造为vue3遇到的问题以及解决办法
前端·vue.js·elementui
FindYou.15 小时前
基于mdEditor实现数据的存储和回显(导出pdf&表情包&目录)
javascript·vue
cc.ChenLy1 天前
【CSS进阶】毛玻璃效果与代码解析
前端·javascript·css
@大迁世界1 天前
仅用 CSS 实现元素圆形排列的方法
前端·css
EstherNi1 天前
仿照elementui写图片放大的案例,但多加了下载按钮,vue3
javascript·vue.js·elementui
CappuccinoRose2 天前
CSS 语法学习文档(十一)
前端·css·学习·表单控件
dangfulin2 天前
简单的视差滚动效果
前端·css·视差滚动
Amumu121382 天前
CSS:字体属性
前端·css
henry1010102 天前
DeepSeek生成的网页版念经小助手
javascript·css·html5·工具