el-dialog实现遮罩层后面的内容也能点击

复制代码
:modal="false" // 关闭遮罩层
:close-on-click-modal="false" // 是否可以通过点击 modal 关闭 Dialog   

最后设置样式
.el-dialog__wrapper {
  pointer-events: none;

  ::v-deep .el-dialog {
    pointer-events: auto;
  }
}

完整示例:

html 复制代码
<!--
 * @Description: 详情 弹窗
 * @Author: mhf
 * @Date: 2025/4/2
-->
<template>
  <el-dialog
    width="600px"
    v-dialog-out
    append-to-body
    v-if="dialogVisible"
    :title="title"
    :visible="dialogVisible"
    :before-close="hideDialog"
    :close-on-click-modal="false"
    :modal="false"
  >
    <div class="dialog-body">
      详情
    </div>

    <lineH />
    <div class="dialog-footer">
      <el-button @click="hideDialog">取 消</el-button>
      <el-button type="primary" @click="validateForm">确 定</el-button>
    </div>
  </el-dialog>
</template>

<script>
export default {
  name: "resourceDetailsDialog",
  components: {},
  props: {},
  dicts: [],
  data() {
    return {
      dialogVisible: false,
      title: ""
    };
  },
  methods: {
    showDialog(data) {
      this.dialogVisible = true;
      this.title = data.title;
      if (data.data) {
        this.getTableData(data.data);
      }
    },

    hideDialog() {
      this.dialogVisible = false;
    },

    validateForm() {
    },

    getTableData(data) {
      console.log(data, "获取表格数据");
    }
  },
  created() {
  },
  mounted() {
  }
};
</script>

<style lang="scss" scoped>
::v-deep .el-dialog__body {
  padding: 20px 0 0 !important;
}

.dialog-body {
  padding: 0 20px;
  max-height: 65vh;
  overflow-y: auto;
}

.dialog-footer {
  text-align: center;
  padding: 10px 0 18px;
}

.el-dialog__wrapper {
  pointer-events: none;

  ::v-deep .el-dialog {
    pointer-events: auto;
  }
}
</style>
相关推荐
FluxArt2 分钟前
GPT Image 2.5 中文提示词教程:Flux Art 可复用模板
前端·gpt·算法
搬砖的小码农_Sky1 小时前
AI Agent:Windows上Node.js安装后 npm -v报错
前端·npm·node.js·人机交互
FYKJ_20101 小时前
SSM校园失物招领系统41452-计算机课程设计、毕业设计
java·vue.js·spring boot·python·mysql·typescript·spark
计算机魔术师1 小时前
半年翻倍!OpenAI再融300亿,估值冲到1.4万亿
前端
研☆香2 小时前
jQuery + Swiper.js 实现动态渲染轮播图
前端·javascript·jquery
子兮曰2 小时前
Node.js 50个优势场景盘点:一个人单干,为啥我多数时候只用它
前端·后端
IT_陈寒2 小时前
我花3小时debug,就因为JavaScript这个隐式转换坑
前端·人工智能·后端
excel3 小时前
Nuxt 中 useSeoMeta 与 useHead 的区别
前端
竹林8183 小时前
OmniGame 技术白皮书:从零依赖到 WebRTC P2P,重新定义网页小游戏的工程上限
前端·浏览器
ss2733 小时前
AI全栈实战 | 2.1-02 CSS 布局:垂直居中为什么是经典面试题?所有布局在解决什么矛盾
前端·css