Element Plus 如何自定义菜单menu-item的高度

Vue3 + Element Plus 后台管理系统首页布局实战 后台管理系统是企业级应用的核心,其首页布局直接决定用户体验与开发效率。基于 Vue3 和 Element Plus 的组件化方案,能够高效搭建兼具扩展性与响应式的后台骨架。Vue3 的组合式 API 配合 Vite 的极速构建,为前端工程化带来全新体验;Element Plus 提供的容器组件与栅格系统,则让侧边栏、顶栏和内容区的布局划分更加清晰。从工程初始化、按需导入、递归菜单到状态管理,一套完整的后台首页布局方案不仅能满足常规的导航与内容展示需求,还能通过暗黑模式、窄屏适配等细节提升可用性。本文从 Vu 阅读详情
AI摘要

博客围绕Element Plus展开,提到其部分采用scss自定义变量,以--开头为私有变量,@开头变量可通过scss文件覆盖。但实际常需改变私有变量,官方文档缺乏实用例子。文中给出变更菜单条目私有变量来自定义高度的方法,将默认56px改为40px。

Element Plus中部分采用了scss自定义变量,但是以--开头的都是私有变量,通过scss文件可以覆盖的变量只有@开头的变量,在实际应用中,往往我们需要的是改变私有变量,在官方文档中始终没有给出有实际应用价值的例子,比如从始至终的这个例子:)))

:root {
  --el-color-primary: green;
}

在这里我们来实现一个通过变更菜单条目私有变量,来自定义菜单条目的高度。这里el-menu-item-height变量默认值为56px,我们把它变为40px:

.main-menu {
  --el-menu-item-height: 40px;
  --el-menu-sub-item-height: calc(var(--el-menu-item-height) - 6px);
}

在el-menu中使用这个class就可以让自定义的高度生效。

<template>
  <el-menu
    :default-active="activeIndex"
    class="main-menu"
    mode="horizontal"
    @select="handleSelect"
  >
    <el-menu-item index="1">Processing Center</el-menu-item>
    <el-sub-menu index="2">
      <template #title>Workspace</template>
      <el-menu-item index="2-1">item one</el-menu-item>
      <el-menu-item index="2-2">item two</el-menu-item>
      <el-menu-item index="2-3">item three</el-menu-item>
      <el-sub-menu index="2-4">
        <template #title>item four</template>
        <el-menu-item index="2-4-1">item one</el-menu-item>
        <el-menu-item index="2-4-2">item two</el-menu-item>
        <el-menu-item index="2-4-3">item three</el-menu-item>
      </el-sub-menu>
    </el-sub-menu>
    <el-menu-item index="3" disabled>Info</el-menu-item>
    <el-menu-item index="4">Orders</el-menu-item>
  </el-menu>
  <div class="h-6" />
  <el-menu
    :default-active="activeIndex2"
    class="main-menu"
    mode="horizontal"
    background-color="#545c64"
    text-color="#fff"
    active-text-color="#ffd04b"
    @select="handleSelect"
  >
    <el-menu-item index="1">Processing Center</el-menu-item>
    <el-sub-menu index="2">
      <template #title>Workspace</template>
      <el-menu-item index="2-1">item one</el-menu-item>
      <el-menu-item index="2-2">item two</el-menu-item>
      <el-menu-item index="2-3">item three</el-menu-item>
      <el-sub-menu index="2-4">
        <template #title>item four</template>
        <el-menu-item index="2-4-1">item one</el-menu-item>
        <el-menu-item index="2-4-2">item two</el-menu-item>
        <el-menu-item index="2-4-3">item three</el-menu-item>
      </el-sub-menu>
    </el-sub-menu>
    <el-menu-item index="3" disabled>Info</el-menu-item>
    <el-menu-item index="4">Orders</el-menu-item>
  </el-menu>
</template>

<script lang="ts" setup>
import { ref } from 'vue'

const activeIndex = ref('1')
const activeIndex2 = ref('1')
const handleSelect = (key: string, keyPath: string[]) => {
  console.log(key, keyPath)
}
</script>

Good Luck,

Cheers!

Element Plus实战:如何优雅地自定义el-menu导航栏的悬停样式与文字溢出处理 本文深入探讨了Element Plus中el-menu导航栏的深度定制技巧,重点解析了如何优雅地自定义悬停样式与处理文字溢出。通过CSS深度选择器、过渡动画和ElTooltip组件,实现背景色、字体颜色的精细化控制与长文本省略号显示,提升后台管理系统的用户体验与视觉一致性。 阅读详情

相关推荐

EPSON RX8010SJ RTC实战:I2C寄存器配置避坑指南(附完整初始化代码)

本文详细解析了EPSON RX8010SJ RTC芯片在I2C寄存器配置中的常见问题与解决方案,包括TEST位、STOP位和中断控制等关键配置要点。通过实战经验分享和完整的初始化代码模板,帮助开发者避免常见陷阱,确保RTC模块的稳定运行。

weixin_28678831的博客 405

vue vue-element-ui组件 el-menu高度设置

vue-element-ui组件el-menu菜单高度设置。

然而老干妈早就看穿了一切 1万+

MoveIt控制睿尔曼RM65机械臂:从仿真到实机的3种控制模式对比

本文详细解析了使用MoveIt框架控制睿尔曼RM65机械臂的三种核心模式:拖动规划、目标姿态规划和Python API控制,从Gazebo仿真到实机部署的完整实现路径。通过ROS环境配置、控制参数优化及实机过渡技术,为工业自动化和机器人研究提供实用指南。

727

使用elementui做后台管理系统,el-aside(el-menu)与el-main高度不一的问题,实现el-aside(el-menu)占满整个页面,以及实现多级菜单。

先来看看问题1:(实现el-menu占满整个页面)这是el-menu没有设置高度出现的问题这是将el-menu这块高度设置为100vh,出现的问题最后,解决问题 ,如图 在App.vue中,添加以下代码 在布局文件中,也就是在以下文件中,给container类添加戴拿 最后,也就是在el-main里面,即TabInner里面添加以下代码 问题2:实现多级菜单做法:遍历从父组件传过来的menuData数组数据(菜单栏数据),如果数据里有children属性,则建立一个父级菜单名,并再次循环去判断

qq_51758070的博客 8138

MSTAR数据集下载地址及处理方法

首先感谢博主冯子材提供下载的百度网盘地址。 在这里为了防止侵权,特此鸣谢,并给出其博客地址。 地址中有MSTAR百度网盘下载地址和需要使用的数据介绍,其中百度网盘中有数据转换工具 https://blog.csdn.net/taifengzikai/article/details/80600355 工具使用 因为下载得到的数据是二进制文件,需要使用官方提供的工具进行转换,可将其转换为jpeg。 有...

KamenRider 1万+

ABAP FB05 清账实战:POSTING_INTERFACE_CLEARING 核心参数与业务场景解析

本文深入解析ABAP FB05清账操作中的核心函数POSTING_INTERFACE_CLEARING,详细讲解其关键参数与业务场景应用。通过实战案例展示收款清账(EINGZAHL)流程,提供常见错误排查方法,并分享批量清账优化与财务凭证集成的高级技巧,帮助开发者高效处理SAP财务模块清账需求。

weixin_33423874的博客 475

element-ui 导航栏的样式修改

::v-deep .el-menu-item { background-color: #EBEEF5; height: 20px; line-height: 20px; } .el-menu--horizontal .el-menu .el-menu-item, .el-menu--horizontal .el-menu .el-submenu__title { height: 20px; line-height: 20px; } .el-submenu /deep/ .el-subme

weixin_44479794的博客 4272

从Simulink到Amesim:一份FMU联合仿真的避坑指南(含UDP通讯完整配置)

本文详细解析了从Simulink到Amesim的FMU联合仿真全流程,重点介绍了UDP通讯配置中的常见陷阱与解决方案。通过实战案例,帮助工程师规避编译器不兼容、步长设置冲突等典型问题,提升复杂系统仿真的效率与准确性。

weixin_34046298的博客 336

我一人全干!之二,vue3后台管理系统树形目录的实现。

因为此组件不是树形结构的,所以需要封装成系统需要的树形结构组件。可以使用vue的递归组件。因为使用的是element-plus的ui库,所以首选el-menu组件,一个完整的后台管理系统需要一个树形结构的目录,方便用户切换页面。其中子组件MenuItem.vue代码如下。这样就可以实现一个树形结构的系统目录了。menu.vue代码如下。

wjlhanhan的博客 764

LTC3783 LED驱动控制器设计与效率优化详解

开关电源控制器是现代LED照明的核心器件,通过电流模式控制实现高效能量转换。其核心原理是通过采样电阻检测负载电流,配合误差放大器形成闭环调节,在汽车电子、显示背光等场景中确保±3%的电流精度。LTC3783作为典型代表,集成升压/降压-升压多拓扑支持,配合PWM调光技术可实现3000:1的无色偏调光范围。在工程实践中,需重点考量功率电感选型、MOSFET开关损耗与热管理设计,例如在38W功率方案中采用10μH/5A电感和4.5mΩ MOSFET可达成95%效率。该方案特别适用于需要应对9-36V宽输入电压波

weixin_36231030的博客 398

CADENCE 25.1打开元件库ERRORCannot perform the operation because of an exception.

摘要:解决CADENCE25.1打开元件库报错"ERRORCannotperformtheoperationbecauseofanexception"的方法:该错误通常由软件中文设置导致。解决方案为:进入Options→Preferences→MorePreferences,取消勾选两个本地语言选项后重启软件即可恢复正常。此方法简单有效,能快速解决因语言设置导致的元件库访问异常问题。(98字)

0 1011

lementui el-menu侧边栏占满高度且不超出视口

2.获取到视口的高度减去侧边栏高度获取需要补的高度。1.获取到侧边栏底部到视口顶部的距离。3.最后将两个高度相加获取到总的高度。

qq_45043813的博客 847

RAGFlow 系列教程 第14课:GraphRAG -- 知识图谱增强检索

RAGFlow v0.25.0深度解读了GraphRAG技术,通过构建知识图谱解决传统RAG在多跳推理问题上的局限。系统支持General GraphRAG和Light GraphRAG两种实现,包含四阶段构建流程:实体关系抽取、实体消解、社区检测和图持久化。核心代码位于rag/graphrag目录,采用LLM驱动的抽取机制,结合编辑距离和LLM确认的实体消解策略,以及Leiden社区检测算法。KGSearch模块通过多信号融合检索(实体+关系+N-hop+社区)实现高效查询。该系统将非结构化文本转化为可推

weixin_43674738的博客 101

Vue3 + Element Plus 后台管理首页布局实战:从设计到踩坑

后台管理系统是企业级B端产品的常见形态,其首页布局决定了后续业务页面、权限控制与数据看板的承载基础。Vue3作为新一代前端框架,凭借组合式API与Vite构建工具,在工程化与开发体验上显著优于旧版本。而Element Plus作为Vue3生态中最成熟的组件库,提供了布局容器、侧边菜单、面包屑等高频组件,使开发者能快速搭建稳定的应用骨架。本文从布局方案设计出发,详细拆解侧边栏递归渲染、路由联动、菜单高亮、折叠交互等核心实现,并针对路由跳转后内容不渲染、组件样式覆盖失败、Element Plus特定版本表格阴影

weixin_30357231的博客 358

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Element UI/Plus el-dropdown事件机制全解析:从原理到实战避坑

在前端开发中,事件处理是构建交互式应用的核心基础。其原理基于浏览器的事件模型,包括捕获、目标、冒泡三个阶段,而Vue等框架在此基础上封装了更便捷的自定义事件系统。理解事件机制的技术价值在于能实现精准的交互控制、提升应用性能并避免常见陷阱。在Vue生态的Element UI/Plus组件库中,el-dropdown下拉菜单组件的事件处理是典型应用场景。开发者常遇到事件不触发或冒泡干扰等问题,这通常源于对组件自定义事件(如command事件)与原生DOM事件(如click事件)映射关系的不清晰。本文聚焦于el-

weixin_34209851的博客 454

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Vue+Element UI导航菜单样式修改 submenu

1.右击检查,查看现在的样式,类名复制,粘在css中修改 2.el-submenu不能修改 重新写一个style样式 去掉scoped <style scoped lang="scss"></style> <style> .el-menu--horizontal>.el-submenu ....

ABCD198643的博客 1万+

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

Element UI el-dropdown事件机制深度解析:从原理到实战

在前端开发中,组件的事件机制是构建交互式应用的核心基础。它定义了用户操作与程序逻辑之间的通信桥梁,其原理基于事件监听与派发模型。深入理解事件机制对于实现复杂交互、优化性能至关重要,尤其在Vue.js生态中,它直接关系到组件通信的效率和可维护性。本文聚焦于Element UI的el-dropdown组件,通过剖析其分层事件流,如command事件与原生click事件的交织、visible-change的生命周期管理,并结合动态菜单、异步操作等高频搜索场景,揭示如何解决事件冒泡、菜单状态控制等常见工程难题,帮助

weixin_34228387的博客 359

如何用一份批处理文件完成 Windows 10/11 全 17 个版本的升级、ISO 与 U 盘制作:MediaCreationTool.bat 实战指南

我曾经花了一个下午,满网找 Windows 10 20H2 官方安装工具的下载链接,最后全部是 404——微软官网只留最新版。解决这类麻烦的是 MediaCreationTool.bat:一份批处理文件,覆盖从 Windows 10 1507 到 Windows 11 23H2 的全部 17 个版本,能原地升级、生成 ISO、写入 U 盘,还顺手处理 Windows 11 的 TPM 门槛。 [

gitblog_00823的博客 613

终极指南:vue3-element-admin如何通过混合布局实现企业级后台管理系统的导航革命

在现代企业级后台管理系统的开发中,**vue3-element-admin** 凭借其创新的**混合布局方案**,为开发者提供了前所未有的导航体验优化方案。这个基于 Vue 3 + Vite + TypeScript + Element Plus 构建的前端模板,通过巧妙的**左侧菜单与顶部导航组合**设计,解决了复杂业务系统的导航难题。本文将深入剖析这一布局方案的技术实现、设计哲学与最佳实践。

gitblog_00337的博客 340

Element Plus树形穿梭框设计原理与实战

树形穿梭框是权限配置、组织架构选择等场景中的核心交互组件,其本质是将树形数据结构与双向选择语义深度融合的技术方案。它并非el-transfer与el-tree的简单拼接,而是需围绕嵌套节点状态(checked/indeterminate)、父子依赖关系、可穿梭粒度(isTransferable)重新建模的数据契约对齐过程。关键技术价值在于支持层级联动选中、精准搜索(含祖先路径匹配)、虚拟滚动优化及跨端一致状态同步,广泛应用于后台权限系统、多级分类管理、角色资源分配等工程实践场景。

diaoju3333的博客 297

Vue3-ElementPlus

(1)rule 当前校验规则相关的信息(2)value 所校验的表单元素目前的表单值(3)callback 无论成功还是失败,都需要 callback 回调--callback()校验成功--callback(new Error(错误信息)) 校验失败默认是实时触发,要修改成失焦触发if (value!callback(new Error('两次输入的密码不一致'))} else {callback() //校验成功,也需要callback},

weixin_46479909的博客 3519

如何在Vue3后台系统中实现混合导航布局:解决多业务模块导航难题

在开发企业级后台管理系统时,我们常常面临一个核心挑战:如何在有限屏幕空间内优雅地组织数十甚至上百个功能模块?传统的单一侧边栏导航随着业务增长会变得冗长难用,而vue3-element-admin提供的**混合布局方案**正是为解决这一痛点而生。本文将深入探讨如何通过顶部导航与左侧菜单的组合,构建既美观又高效的导航系统。 ## 问题场景:为什么需要混合导航布局? 想象一下,一个典型的企业后台系统

gitblog_00052的博客 401

elementui竖向导航栏卡顿问题

只需要加上这行CSS即可,同时设置菜单宽度也在这个CSS里面设置,效果完美。今日发现Element 菜单折叠效果卡顿。

m0_51073906的博客 601

naive-ui AutoComplete 自动填充组件完全指南:从搜索提示到自定义渲染

naive-ui(当前仓库为 Vue 3 组件库的镜像源码)内置的 `n-auto-complete` 组件,用于实现输入框的搜索提示(autocomplete)类交互——输入时实时弹出候选菜单,选中后回填到输入框。本指南以 [AutoComplete 中文文档](https://link.gitcode.com/i/4d86709149a1f4e6d32fa4018898490a) 为主体,结合

gitblog_00693的博客 436

【前端】项目中遇到的问题汇总(长期更新)

【长期更新】前端项目中常遇到的问题汇总(vue3+elementPlus+node.js+axios+webpack)

sinat_39394862的博客 1237

若依框架实战指南:从RBAC权限到微服务集成的企业级开发

RBAC(基于角色的访问控制)是现代企业级应用权限管理的核心模型,它通过角色关联权限、用户关联角色的方式,实现灵活且安全的访问控制。在Spring Boot技术栈中,这一原理常与Spring Security结合,通过拦截器与注解驱动,为系统提供细粒度的权限校验。其技术价值在于标准化了权限体系,大幅降低了重复开发成本,使开发者能聚焦于业务逻辑创新。在快速构建后台管理系统、内部运营平台等应用场景时,基于Spring Boot的权限管理系统框架成为高效起点。本文以若依框架为例,深入剖析其如何封装RBAC等基础模

weixin_34163553的博客 359
上一篇: JS工作日计算
java_augur
博客等级 码龄22年 67粉丝 64原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值