当前位置: 首页 > article >正文

elementui 修改el-tabs底部滑块划线的transform滑动距离

因为自定义了tab栏样式,tab下面的划线就出现了错位,调样式调了很久都差点意思,最后决定动态修改划线部分的transform样式;

代码部分:
html部分

<el-tabs v-model="activeName" @tab-click="handleClick" stretch>
...
</el-tabs>

js部分

handleClick(tab) {
      this.activeName = tab.name;
      // 修改el-tabs的transform滑动距离
      this.$nextTick(() => {
        const index = tab.index
        let ele = document.getElementsByClassName('el-tabs__active-bar')[0]; // 获取tab底部滑块划线元素
        let cele = document.getElementsByClassName('el-tabs__item')[index]; // 获取tab-item元素
        const rect = cele.getBoundingClientRect(); // 获取某个元素距离窗口四边的距离
        const left = rect.left;
        // console.log('cele', cele, rect, left);
        // 我页面tab有3个,这里只处理了3个tab时候的滑动距离,根据自己项目的实际情况来修改
        let distance = index == 0 ? left+18.5 : index == 1 ? left+18 : left+28.5;
        // console.log('distance--', index, distance);
        ele.style.transform = `translateX(${distance}px)`
      })
    },

http://www.kler.cn/news/330083.html

相关文章:

  • 【前端开发入门】css快速入门
  • Python机器学习中的模型评估与优化技术
  • 自给自足:手搓了一个睡眠监测仪,用着怎么样?
  • 深入浅出:使用DOM4J结合XPath高效解析XML
  • 【YOLOv8改进[SPPF]】使用SPPFCSPC替换SPPF模块 + 含全部代码和详细修改方式
  • VPN简述
  • C++随心记 续一
  • Vue3 Pinia持久化存储
  • 基于Hive和Hadoop的保险分析系统
  • 【数据结构】线性表
  • CSS3过渡
  • CSP-J 复赛算法 贪心算法练习
  • Elasticsearch学习笔记(2)
  • [RabbitMQ] 7种工作模式详细介绍
  • 腾讯云SDK基本概念
  • OpenGL ES 之EGL(6)
  • 学生课堂行为检测数据集 8800张 上课行为 标注voc yolo 7类
  • [Go语言快速上手]函数和包
  • 在Kali Linux中使用VNC和iptables配置xrdp以实现远程连接
  • 一文上手SpringSecurity【七】