el-menu弹出菜单样式不生效

1. 使用 ruoyi 项目时出现的问题。

html 复制代码
<template>
    <el-menu
        :default-active="activeMenu"
        :collapse="false"
        :unique-opened="true"
        class="container"
        :collapse-transition="true"
        mode="horizontal"
    >
        <sidebar-item
            v-for="(route, index) in sidebarRouters"
            :key="route.path  + index"
            :item="route"
            :base-path="route.path"
        />
    </el-menu>

</template>

class="container" 中的样式是这样的

css 复制代码
 .container {
    box-shadow: 0px 1px 4px 0px rgba(0,0,0,0.1);
    float: left;
    height:  100%;
    width: 200px;
    background-color: transparent !important;
    overflow: hidden;
    -webkit-transition: width .28s;
    transition: width 0.28s;
    -webkit-box-shadow: 2px 0 6px rgba(0,21,41,.35);
    box-shadow: 2px 0 6px rgba(0,21,41,.35);

    .svg-icon {
        margin-right: 10px;
        margin-left: 3px;
    }

    // menu hover
   .el-submenu__title {
        font-size: 17px;
        color: white !important;
        &:hover {
            background-color: transparent !important;
        }
    }

}

2. 问题描述

  • .svg-icon 这个 样式只对 一级菜单 "高速公路" 生效! 二级菜单和 其中的选项则不能生效!

2. 解决方法

  • html 文档中 是没有 弹出菜单项(出入口收费站 -> 总流量 。。。)的。
  • 他们在 html 文档的末尾可以看到
  • 所以 根据 弹出菜单出现的位置 设置样式就可以了!在 el-menu--popup这个样式的基础上作修改
css 复制代码
.el-menu--popup {
    .el-submenu__title{
        background-color: #0B1423 !important;
        color: #FFF !important;

    }
    .el-menu-item{
        background-color: #0B1423 !important;
        color: #FFF !important;
    }
    .el-menu-item:hover {
        background-color: #FFF !important;
        color: #0B1423 !important;
    }
    .el-menu-item.is-active {
        background-color: #FFF !important;
        color: #0B1423 !important;
    }
    .svg-icon {
        margin-right: 10px;
        margin-left: 3px;
    }  
}

4. 总结

修改弹出框元素 不在 el-menu 样式中,我们 需要在 el-menu--popup 中修改样式!

相关推荐
雪芽蓝域zzs18 小时前
(六)打包优化 + Nginx 部署完整配置 + 项目收尾
前端·vue.js
研☆香19 小时前
聊一聊前端的常见字 关键字
开发语言·前端·javascript
东风破_19 小时前
JWT 1:从一个登录请求开始,理解 React 项目里的 API 层与 Mock
前端·后端
东风破_19 小时前
JWT 3:为什么 Token 要放进 Authorization?Axios 拦截器到底解决了什么?
前端·后端
东风破_19 小时前
JWT 5:路由守卫是什么?把整个 JWT 登录鉴权流程串起来
前端·后端
东风破_19 小时前
JWT 2:HTTP 是无状态的,为什么登录成功后还要给 Token?
前端·后端
东风破_19 小时前
JWT 4:Zustand 到底解决了什么?为什么登录状态要放进 Store?
前端·后端
IT_陈寒19 小时前
Vite动态导入差点让我秃头,原来问题出在这
前端·人工智能·后端
白泽_hunter20 小时前
项目里最常见的 5 个 this 指向坑:从规则到实战彻底讲透
前端
宿67420 小时前
vue3-pinia
前端·vue.js