vue element 添加遮罩层

el-dialog自带有遮罩层,但在:modal=“true” :modal-append-to-body=“true” 等设置都没有效果的情况下,考虑自己加一个遮罩层吧

添加html,div里面可以添加文字或图片

	<div v-if="showModal" class="mask">
      <img class="loading-image" src="../../image/loading.gif" alt="正在处理,请等待。。。">
      <!-- <span class="mask-text">处理中,请等待...</span> -->
    </div>

设置css样式

.mask {
 background-color: rgb(0, 0, 0);
 opacity: 0.3;
 position: fixed;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 z-index: 1
}

在要展示的时候将showModal值设为true就行
在对话框打开的时候,如果遮罩层在对话框底下,f12看一下对话框自带的遮罩层的z-index值是多少:
步骤1.
在这里插入图片描述
2.这就是自带遮罩层的z-index值,所以手动添加的遮罩层z-index要大于2026,值越大的遮罩层在越上层
在这里插入图片描述
3.所以将mask样式的z-index改大

.mask {
 background-color: rgb(0, 0, 0);
 opacity: 0.3;
 position: fixed;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 z-index: 10000
}

这样就可以正常显示了,效果如下图
在这里插入图片描述
推荐一个很好可以自定义加载中的动图的网站https://loading.io/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值