el-dialog嵌套遇到的问题

在使用Vue和ElementUI开发PC管理平台时,遇到el-dialog嵌套导致的遮罩层覆盖问题。当打开嵌套dialog时,蒙层会盖住整个页面。解决方案包括:1) 设置嵌套dialog的`append-to-body`为`true`,使内容区域插入到body下,避免因定位问题被遮挡;2) 设置嵌套dialog的`modal-append-to-body`为`false`,使蒙层在当前元素下,防止被父元素遮挡。尽量避免嵌套dialog的写法,以减少此类问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

最近在弄PC端的管理平台,然后使用的是vue + elementUI。今天把遇到的问题总结下,正所谓,好记性不如烂笔头。

el-dialog嵌套

我们的业务需求需要嵌套dialog,正常打开第一个dialog是没有没问题的。 页面有蒙层,然后内容区域高亮

如下图

image.png

但是打开嵌套的dialog后蒙层盖住了整个页面,导致内容区域也被盖住了。

image.png

然后我去查看文档,查看页面dom结构就知道大致原因了。

这是因为dialog的蒙层默认都是插入到body的,然后它的z-index是动态生成,默认是2000,内容区域的z-index也是动态生成,默认是2001,它们的定位都是fixed,但是内容区域的z-index会比蒙层的大1,导致内容区域可以高亮。

然后你嵌套的dialog显示后,它的蒙层也是替换第一个dialog的蒙层,同样插入到body,然后它的z-index会递增,是2002ÿ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值