Vue3项目使用ElDrawer后select方法不生效

news2025/5/17 12:39:15

Vue3 项目中 ElDrawer 内 ElSelect 下拉框 z-index 失效问题分析与解决方案

    • 问题描述
    • 问题分析
    • 解决方案
    • 结论

问题描述

在 Vue3 项目中使用 Element Plus 的 ElDrawer 组件时,当在抽屉内部使用 ElSelect 组件,发现下拉选择框(dropdown)的 z-index 层级问题导致下拉框被抽屉遮挡,即使设置了较高的 z-index 值也不生效。

问题分析

  1. 层级上下文 (Stacking Context) 问题

ElDrawer 的特性:ElDrawer 组件默认会创建一个新的层叠上下文,其 z-index 通常设置为较高值(如 2000)

ElSelect 下拉框:默认情况下,Select 的下拉框会被附加到 body 元素,但由于抽屉的层叠上下文限制,即使设置更高 z-index 也无法突破

  1. 默认行为问题

popper-append-to-body 默认为 true,导致下拉框的 DOM 结构脱离抽屉

即使设置 :popper-append-to-body=“false”,仍需处理 z-index 层级关系

解决方案

<template>
  <ElDrawer
    v-model="dialogVisible"
    :z-index="4000"
    direction="rtl"
    size="1050px"
    :show-close="false"
    :close-on-click-modal="false"
    :close-on-press-escape="false"
    class="custom-drawer"
  >
    <el-form>
      <el-form-item label="进出口资质" prop="isIeQualifications">
        <el-select
          v-model="formData.isIeQualifications"
          placeholder="请选择"
          :popper-append-to-body="false"
          popper-class="custom-select-dropdown"
        >
          <el-option
            v-for="dict in getIntDictOptions(DICT_TYPE.IS_ONLINE_STATUS)"
            :key="dict.value"
            :label="dict.label"
            :value="dict.value"
          />
        </el-select>
      </el-form-item>
    </el-form>
  </ElDrawer>
</template>

<style scoped>
/* 自定义抽屉容器 */
.custom-drawer {
  position: relative; /* 建立新的层叠上下文 */
  height: 100vh;
  overflow-y: auto;
}

/* 处理抽屉内容区域滚动 */
:deep(.el-drawer__body) {
  height: calc(100% - 55px);
  overflow-y: auto;
  padding: 20px;
}

/* 处理下拉框层级 */
:deep(.custom-select-dropdown) {
  z-index: 4001 !important; /* 必须高于抽屉的 z-index */
  position: relative; /* 确保在抽屉的层叠上下文中 */
}
</style>

结论

通过控制下拉框的 DOM 位置和明确的层叠上下文管理,可以有效解决 ElDrawer 内 ElSelect 下拉框的 z-index 问题。关键在于理解 CSS 层叠上下文的工作原理,并确保下拉框的 z-index 在正确的上下文中计算。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2377660.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PD 分离推理的加速大招,百度智能云网络基础设施和通信组件的优化实践

为了适应 PD 分离式推理部署架构&#xff0c;百度智能云从物理网络层面的「4us 端到端低时延」HPN 集群建设&#xff0c;到网络流量层面的设备配置和管理&#xff0c;再到通信组件和算子层面的优化&#xff0c;显著提升了上层推理服务的整体性能。 百度智能云在大规模 PD 分离…

官方 Elasticsearch SQL NLPChina Elasticsearch SQL

官方的可以在kibana 控制台上进行查询&#xff1a; POST /_sql { “query”: “SELECT client_ip, status FROM logs-2024-05 WHERE status 500” } NLPChina Elasticsearch SQL就无法以在kibana 控制台上进行查询&#xff0c;但是可以使用postman接口进行查询&#xff1a;

5月16日复盘-目标检测开端

5月16日复盘 一、图像处理之目标检测 1. 目标检测认知 ​ Object Detection&#xff0c;是指在给定的图像或视频中检测出目标物体在图像中的位置和大小,并进行分类或识别等相关任务。 ​ 目标检测将目标的分割和识别合二为一。 ​ What、Where 2. 使用场景 目标检测用于…

mathematics-2024《Graph Convolutional Network for Image Restoration: A Survey》

推荐深蓝学院的《深度神经网络加速&#xff1a;cuDNN 与 TensorRT》&#xff0c;课程面向就业&#xff0c;细致讲解CUDA运算的理论支撑与实践&#xff0c;学完可以系统化掌握CUDA基础编程知识以及TensorRT实战&#xff0c;并且能够利用GPU开发高性能、高并发的软件系统&#xf…

IDEA怎么汉化idea中文改回英文版

第一步:点击左上角的File&#xff0c;然后选择Setting 第二步&#xff1a;Setting页面选择 Appearance & Behavior&#xff0c;然后展开System Settings&#xff0c;然后选择 Language and Region&#xff0c;进行修改 我操作的是2024年的版本 File->Settings -> Ap…

车道线检测----CLRKDNet

今天的最后一篇 车道线检测系列结束 CLRKDNet&#xff1a;通过知识蒸馏加速车道检测 摘要&#xff1a;道路车道是智能车辆视觉感知系统的重要组成部分&#xff0c;在安全导航中发挥着关键作用。在车道检测任务中&#xff0c;平衡精度与实时性能至关重要&#xff0c;但现有方法…

从技术视角解构 Solana Meme 币生态

在高吞吐、高并发的 Solana 网络上&#xff0c;一类轻量化、高热度的代币形式正在爆发式增长——Meme Token&#xff08;迷因代币&#xff09;。尽管起源于社群文化&#xff0c;但其技术实现并非“玩笑”&#xff0c;而是一整套构建于 Solana Runtime 与 Token Extensions 之上…

智能接处警系统:以秒级联动响应重塑应急处置效能

​​随着我国能源、化工、航空等关键行业的快速发展&#xff0c;传统消防管理模式已难以满足高效应急响应的需求。国家能源局、应急管理部、民航总局均出台专项规定&#xff0c;对消防站建设提出更高要求&#xff0c;在此背景下&#xff0c;智能接处警系统正是应对这些挑战的核…

GpuGeek 网络加速:破解 AI 开发中的 “最后一公里” 瓶颈

摘要&#xff1a; 网络延迟在AI开发中常被忽视&#xff0c;却严重影响效率。GpuGeek通过技术创新&#xff0c;提供学术资源访问和跨国数据交互的加速服务&#xff0c;助力开发者突破瓶颈。 目录 一、引言&#xff1a;当算力不再稀缺&#xff0c;网络瓶颈如何破局&#xff1f; …

C# DataGridView 选中所有复选框

问题描述 在程序中尝试选中所有复选框&#xff0c;但出现错误。如果单击顶部的完整选中/释放复选框&#xff0c;同时选中包含复选框的列&#xff0c;则选定区域不会改变。该如何解决&#xff1f; 上面的图片是点击完整版本之后的。 下面是本文的测试代码&#xff0c;函数 dat…

AB Download Manager v1.5.8 开源免费下载工具

下载文件是我们日常工作和生活中经常进行的操作。面对动辄数十GB的4K影片、设计素材包或开发工具&#xff0c;传统浏览器的单线程下载如同"涓涓细流"&#xff0c;非常影响我们的效率和体验。 那么&#xff0c;一款高效且易用的下载工具至关重要。今天就让我们解锁这…

深度剖析:Dify+Sanic+Vue+ECharts 搭建 Text2SQL 项目 sanic-web 的 Debug 实战

目录 项目背景介绍sanic-web Dify\_service handle\_think\_tag报错NoneType问题描述debug Dify调用不成功&#xff0c;一直转圈圈问题描述debug 前端markdown格式只显示前5页问题描述debug1. 修改代码2.重新构建1.1.3镜像3.更新sanic-web/docker/docker-compose.yaml4. 重新部…

学习51单片机02

吐血了&#xff0c;板子今天才到&#xff0c;下午才刚开始学的&#xff0c;生气了&#xff0c;害我笔记都断更了一天。。。。 紧接上文...... 如何将HEX程序烧写到程序? Tips&#xff1a;HEX 文件是一种常用于单片机等嵌入式系统的文件格式&#xff0c;它包含了程序的机器码…

麒麟服务器操作系统安装 MySQL 8 实战指南

往期好文连接&#xff1a;统信UOS/麒麟KYLINOS安装JDBC驱动包 Hello&#xff0c;大家好啊&#xff0c;今天给大家带来一篇麒麟服务器操作系统上安装 MySQL 8 的文章&#xff0c;欢迎大家分享点赞&#xff0c;点个在看和关注吧&#xff01;MySQL 作为主流开源数据库之一&#x…

AWS EC2 微服务 金丝雀发布(Canary Release)方案

为什么需要实现金丝雀发布? 在当前项目的工程实践中, 已经有了充分的单元测试, 预发布环境测试, 但是还是会在线上环境出现非预期的情况, 导致线上事故, 因此, 为了提升服务质量, 需要线上能够有一个预验证的机制. 如何实现金丝雀发布? 使用AWS code deploy方案 AWS code…

支持蓝牙5.0和2.4G私有协议芯片-PHY6222

PHY6222QC-W04C 是一款适用于蓝牙低功耗&#xff08;BLE&#xff09;5.2 应用的片上系统&#xff08;SoC&#xff09;。它搭载 ARM Cortex™-M0 32 位处理器&#xff0c;配备 64KB SRAM、512K Flash、96KB ROM、256 bit efuse &#xff0c;以及超低功耗、高性能的多模式射频模块…

图像锐化调整

一、背景介绍 之前找多尺度做对比度增强时候&#xff0c;发现了一些锐化相关算法&#xff0c;正好本来也要整理锐化&#xff0c;这里就直接顺手对之前做过的锐化大概整理了下&#xff0c;方便后续用的时候直接抓了。 这里整理的锐化主要是两块&#xff1a;一个是参考论文&#…

找客户的app

找客户的 app 在竞争激烈的商业环境中&#xff0c;找客户的 APP 成为企业拓展业务的利器。 微拓客 APP&#xff0c;集智能获客、营销素材、客户管理于一体。支持关键词、附近客源等多方式采集&#xff0c;覆盖 300 行业&#xff1b;一键采集客源&#xff0c;一键导出到通讯录…

​​金融合规革命:​​R²AIN SUITE 如何重塑银行业务智能​

一、市场发展背景与核心驱动因素​ 信息过载​&#xff1a;单家银行年均新增监管文件大量增加&#xff0c;人工解读效率极低。 客户体验升级​&#xff1a;高净值客户期待“724小时专业级响应”&#xff0c;但客户经理难以实时掌握数百款产品动态。 风险防控​&#xff1a;传…

论文阅读:Self-Collaboration Code Generation via ChatGPT

地址&#xff1a;Self-Collaboration Code Generation via ChatGPT 摘要 尽管大型语言模型&#xff08;LLMs&#xff09;在代码生成能力方面表现出色&#xff0c;但在处理复杂任务时仍存在挑战。在现实软件开发中&#xff0c;人类通常通过团队协作来应对复杂任务&#xff0c;…