elementPlus的tree组件点击后有白色背景

在使用elementPlus的tree组件时,需要对它进行样式的重写,下面是相关代码

html 复制代码
<script setup>
import { ref } from 'vue'
const data = [
  {
    label: 'Level one 1',
    children: [
      {
        label: 'Level two 1-1',
        children: [
          {
            label: 'Level three 1-1-1'
          }
        ]
      }
    ]
  },
  {
    label: 'Level one 2',
    children: [
      {
        label: 'Level two 2-1',
        children: [
          {
            label: 'Level three 2-1-1'
          }
        ]
      },
      {
        label: 'Level two 2-2',
        children: [
          {
            label: 'Level three 2-2-1'
          }
        ]
      }
    ]
  },
  {
    label: 'Level one 3',
    children: [
      {
        label: 'Level two 3-1',
        children: [
          {
            label: 'Level three 3-1-1'
          }
        ]
      },
      {
        label: 'Level two 3-2',
        children: [
          {
            label: 'Level three 3-2-1'
          }
        ]
      }
    ]
  }
]
</script>

<template>
  <div class="tree_box">
    <el-tree style="max-width: 600px" :data="data" />
  </div>
</template>

<style scoped lang="scss">
.tree_box {
  background-color: purple;
  width: 400px;
  height: 400px;
  padding: 100px;
}
:deep(.el-tree) {
  background-color: transparent; // 整个tree组件的背景色
  .el-tree-node:focus > .el-tree-node__content {
    background: black !important; // tree选中之后的背景色
  }
  .el-tree-node__content {
    &:hover {
      background: black; // 鼠标hover背景色
    }
  }
  .el-tree-node__label {
    color: #fff; // 文字颜色
  }
}
</style>

下面是各个class的解释:

  • .el-tree:这个就是整个tree组件的根元素,这个class默认背景色是白色,看需求是变成透明还是什么颜色
  • .el-tree-node:focus > .el-tree-node__content:这个class会在点击tree之后生效,默认是白色
  • .el-tree-node__content:这个class是树组件的每一行的元素,鼠标hover时默认为白色背景,可以修改成需求的颜色
  • .el-tree-node__label: 这个class是树文字的class,可以设置文字的相关样式
相关推荐
TeleostNaCl2 小时前
解决 Chrome 无法访问网页但无痕模式下可以访问该网页 的问题
前端·网络·chrome·windows·经验分享
前端大卫4 小时前
为什么 React 中的 key 不能用索引?
前端
你的人类朋友4 小时前
【Node】手动归还主线程控制权:解决 Node.js 阻塞的一个思路
前端·后端·node.js
小李小李不讲道理6 小时前
「Ant Design 组件库探索」五:Tabs组件
前端·react.js·ant design
毕设十刻6 小时前
基于Vue的学分预警系统98k51(程序 + 源码 + 数据库 + 调试部署 + 开发环境配置),配套论文文档字数达万字以上,文末可获取,系统界面展示置于文末
前端·数据库·vue.js
mapbar_front6 小时前
在职场生存中如何做个不好惹的人
前端
牧杉-惊蛰7 小时前
纯flex布局来写瀑布流
前端·javascript·css
一袋米扛几楼988 小时前
【软件安全】什么是XSS(Cross-Site Scripting,跨站脚本)?
前端·安全·xss
向上的车轮8 小时前
Actix Web适合什么类型的Web应用?可以部署 Java 或 .NET 的应用程序?
java·前端·rust·.net
XiaoYu20028 小时前
第1章 核心竞争力和职业规划
前端·面试·程序员