element-ui框架的el-dialog弹出框被遮罩层挡住

这篇具有很好参考价值的文章主要介绍了element-ui框架的el-dialog弹出框被遮罩层挡住。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

解决办法

在el-dialog标签里添加 :modal-append-to-body=‘false’

问题分析  先来看看element-ui官网提供的属性说明文档

文档解释:翻译成大白话就是,若el-dialog弹出框设置了modal-append-to-body='true'(默认)属性,它的遮罩层就会被插入到body标签下(即与组件所在的最外层div同一层级),知道这个原理就好办了

:append-to-body='true'
或者
:modal-append-to-body='false'

像这样:

   <el-dialog title="提示" :visible.sync="dialogVisible" width="30%" top='60px' :before-close="handleClose"
            :append-to-body='true'>

问题分析:经过分析源码可以知道,el-dialog的显示层和遮罩层都设置了position:fixed,当然显示层的z-index肯定要比遮罩层的大,才能正常的显示弹出框。问题就出在此处,若el-dialog的父级也设置了position:fixed,并且其中z-index比弹出框的遮罩层的小(遮罩层出于更高一层),那么弹出框的内容就会被遮罩层所遮挡住了。

经过分析问题的代码可以知道,el-dialog的父级元素确实设置了position:fixed,并且其z-index比弹出框的遮罩层小,所以也会出现遮罩层把内容挡住的问题

解决方案:

1、给el-dialog设置modal-append-to-body='false',使遮罩层插入到Dialog的父元素上

2、给position:fixed的父元素设置一个z-index,并且要比遮罩层的大。

3、el-dialog父元素不使用fixed定位。文章来源地址https://www.toymoban.com/news/detail-588128.html

到了这里,关于element-ui框架的el-dialog弹出框被遮罩层挡住的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • element-ui el-dialog如何设置响应式宽高且永远水平垂直居中

            el-dialog是使平常使用element-ui比较常用的一个组件,想要灵活控制它达到想要的开发效果,就必须要熟悉它默认一些属性:默认 width:50% , 高度 为标题和el-dialog__body,el-dialog__footer 内容以及padding撑开 ,定位上 默认水平居中,距离顶端15vh         原理是width采

    2024年02月11日
    浏览(30)
  • 基于element-ui el-dialog组件封装,可缩放+可移动的弹窗组件

    源码下载 改组件继承el-dialog组件百分之95属性,可直接对el-dialog进行替换。在项目中我的命名为: vue代码 :搞成组件,路径随意,推荐统一放在组件目录下 拖动及缩放操作js代码: 将skdialog.js注册为指令: 目录: 指令使用:(v-指令名称(SkDialogDrag)) 效果图: 注:吃水

    2024年02月03日
    浏览(39)
  • Vue中使用element-ui el-dialog弹窗最大化还原,拖拽,动态改变大小

    创建对应的js文件   先在指定稳定文件创建js文件,如src下创建diaLog.js文件,部分会提示红色爆红,可以不予理会,可以根据需求修改,如:弹框可拉伸最小宽高。   2. 在main.js的引用   同时为了防止冲突,需要关闭closeOnClickModal(弹窗默认点击遮罩改为不关闭),并添加标签

    2024年02月11日
    浏览(31)
  • [element-ui] v-click-outside与el-dialog同时存在,出现的Bug

    背景 : v-click-outside 点击盒子aaa外部,盒子aaa隐藏 问题 :因为 el-dialog 绑在了body上,点击 el-dialog 里的任意内容,盒子aaa也隐藏了。 需求 :点击 el-dialog 里的任意内容,盒子aaa不隐藏 解决:给 el-dialog 加上 @click.native.stop 来阻止 el-dialog 内部的点击事件冒泡。

    2024年02月11日
    浏览(33)
  • Vue项目element-ui弹窗组件el-dialog、el-drawer,阻止点击遮罩层关闭

    效果图: 我们只需要设置这两个 属性 append-to-body :close-on-click-modal=“false” 注意 : 这里的close-on-click-modal属性前需要写入 :

    2024年02月12日
    浏览(43)
  • 如何使用element-ui相关组件如:el-select,el-table,el-switch,el-pagination,el-dialog

    element-ui 官方链接: 组件 | Element https://element.eleme.cn/#/zh-CN/component/installation userTypeOptions后端响应的对象数组数据 表格中添加模板的作用域实现 异步处理 监听status的状态 权限修改异步处理: 几个监听函数与异步请求 axios实现发送异步请求 监听弹窗

    2024年02月07日
    浏览(34)
  • element UI组件库el-dialog内程序刷新el-dialog内组件方法

    1、牢牢记住,vue是基于JavaScript ES6的,所以只要刷新页面里面data下的数据,页面会自动刷新的。 所以这个数据是父页面传给el-dialog的,要刷新父页面的数据,el-dialog页面内的组件就可以刷新了。 2、在页面的组件处理后台程序完成后,可以调用 that.$parent.$parent.【父页面的方

    2024年02月13日
    浏览(27)
  • vue/Element UI 实现Element UI el-dialog 自由拖动

    前言: 最近有个项目,客户要求弹窗可拖动,但是由于elemen ui本身的弹窗并没有拖动的属性,无法满足客户的需求。 于是我百度找到了几篇文章,终于可以实现客户的需求! 请往下看↓↓ 一、新建一个目录:utils 二、创建drag .js文件 三、创建directive.js 文件 四、main.js文件中

    2024年02月02日
    浏览(33)
  • Element ui关闭el-dialog时清除数据

    如果是按叉叉关闭或者点表单以外空白处关闭的话 可以给el-dialog添加    在methods里添加函数 如果是按取消按钮清除数据,也可以给取消按钮绑定点击事件,点击取消则调用closeForm函数。 注意: 要为每个 form-item 加上 prop 属性,要不然无法清空 resetFields() 方法是重置表单,重

    2024年02月11日
    浏览(30)
  • element ui中el-dialog如何自定义标题,加图标

    效果图:

    2024年02月13日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包