Vue3 - Element Plus 菜单侧边栏可拖动调整左右两侧宽度,el-menu菜单组件拖拽中间的分隔栏可调整布局宽度,后台管理系统左侧导航栏可拖曳自由调整大小(Menu菜单拖拽条,详细代码)

147 篇文章 ¥9.90 ¥99.00

前言

如果您需要 Vue2 版本,请访问 这篇文章

在 vue3+element-plus 项目开发中,详解实现el-menu侧边菜单栏组件可拖动自由调整宽度大小,Menu导航栏菜单旁边加一个 “拖曳条” 用户鼠标可拖动调整,element实现侧边栏可拖拽,vue3中实现拖动调整左右两侧div的宽度(左右拖拽),右侧区域可自适应宽度(菜单栏和右侧内容区、左右布局等)左侧菜单栏动态改变宽度方案。

提供详细示例代码,新手小白复制运行即可。


如下图所示,适用于各种菜单+布局情况,浏览器兼容好且流畅。

详细代码,保证搞定

在这里插入图片描述

示例代码

具体实现思路及代码如下,请直接复制运行测试即可。

### 修改 Vue3Element-Plus 侧边栏收缩时的背景色 在 Vue3Element-Plus 的项目中,可以通过 CSS 深度选择器 `::v-deep` 或者新的语法 `:deep()` 来覆盖组件内部样式。以下是实现修改侧边栏折叠时背景色的具体方法。 #### 使用深度选择器覆盖默认样式 通过添加以下代码到项目的全局样式文件或者特定组件的 `<style>` 块中: ```css /* 覆盖展开状态下菜单的背景色 */ :deep(.el-menu) { background-color: transparent !important; /* 设置透明或其他颜色 */ } /* 自定义折叠状态下的宽度和背景色 */ :deep(.el-menu--collapse) { width: 10px; /* 折叠后的宽度 */ background-color: #your-desired-color !important; /* 替换为你想要的颜色 */ } ``` 上述代码片段分别设置了 `.el-menu` 展开状态下的背景色以及 `.el-menu--collapse` 折叠状态下的宽度与背景色[^1][^3]。 #### 在指定组件中引入变量并应用样式 如果需要更灵活地管理样式,可以将这些样式放入单独的 SCSS 文件中,并在目标组件中导入该文件。例如,在 `Sidebar/index.vue` 组件中引入 `src/styles/variables.scss` 并确保其生效[^2]: ```scss // src/styles/variables.scss $sidebar-bg-color-collapsed: #your-desired-color; .el-menu--collapse { background-color: $sidebar-bg-color-collapsed !important; } ``` 然后在 `Sidebar/index.vue` 中使用 `@import` 导入此文件: ```javascript <style lang="scss"> @import &#39;@/styles/variables.scss&#39;; .sidebar-container { :deep(.el-menu--collapse) { background-color: var(--sidebar-bg-color-collapsed) !important; } } </style> ``` #### 修改图标的颜色 对于侧边栏图标颜色的调整,有多种方式可以选择。一种简单的方法是直接设置父容器的 `color` 属性,因为 SVG 图标通常会继承父级的颜色属性;另一种则是显式更改 `fill` 颜色来控制具体的表现效果[^4]。 ```css /* 方法一:统一设置父级 color */ :deep(.el-submenu__icon-arrow), :deep(.el-menu-item i) { color: #desired-icon-color !important; } /* 方法二:针对 fill 进行独立设定 */ :deep(svg path) { fill: #specific-fill-color !important; } ``` 以上两种方案可以根据实际需求任选其一或组合运用。 --- ### 注意事项 当尝试覆写第三方库(如 Element-Plus)自带样式的某些部分时,请务必确认所使用的类名是否完全匹配官方文档描述的内容结构。此外,由于框架版本迭代可能导致 API 变化,建议始终查阅最新版的相关资料以获取最精确的信息支持。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王二红

请作者喝杯咖啡 :)

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值