Element UI Dialog对话框改成固定高度超出部分滚动条滚动

 更新时间:2024年05月16日 09:04:34   作者:蓝胖子的多啦A梦  
这篇文章主要给大家介绍了关于Element UI Dialog对话框改成固定高度超出部分滚动条滚动的相关资料,el-dialog默认高度是自由拉伸的,当内容超过屏幕时会出现滚动条,按钮和标题都会随着滚动,用户体验不好,需要的朋友可以参考下

问题描述

elememt ui 中的el-dialog对话框如果内容过多高度会被无限拉长。要将其设置成固定高度,此处我设置的是页面总高度的70%,内容过多时在对话框内出现滚动条。但是这样设置会造成高度不能根据内容自适应,始终是70%。可以有两种方法实现:

一具体代码如下:

<template>
    <div>
        <el-dialog v-el-drag-dialog :close-on-click-modal="false" v-if="orderDetailVisible"
            :title="$t('workOrder.workOrderDetail')"
            :visible.sync="orderDetailVisible" 
            class="showAll_dialog"
            width="70%" :before-close="close">
            <div id="printJS-form">
                <!-- 需要打印的区域 -->
                <div class="table-d tableBox" id="box">
                    <el-table ref="tableG" :header-cell-style="{ color: '#FFF', background: '#333' }"
                        :cell-style="{ color: '#FFF', background: '#333' }" :default-sort="{ prop: 'stockNo', order: '' }"
                        :data="gridData" id="pagetable" :row-key="getRowKeys" border style="width:100%;"
                        @selection-change="handleSelectionChange">
                        <template slot="empty">
                            <span style="color: #969799">{{ $t("NeoLight.empty") }}</span>
                        </template>
                        <el-table-column prop="feederInfo" :sortable="true" :label="$t('workOrder.stationInfo')" />
                        <el-table-column prop="outNum" :sortable="true" :label="$t('workOrder.quantityIssued')" />
                   </el-table>
                </div>
            </div>
        </el-dialog>
    </div>
</template>

样式修改

// 修改对话框高度
.showAll_dialog {
    overflow: hidden;

    ::v-deep .el-dialog {
        margin: 0 auto !important;
        height: 70%;
        overflow: hidden;
        background-color: black;

        .el-dialog__body {
            position: absolute;
            left: 0;
            top: 54px;
            bottom: 0;
            right: 0;
            padding: 0;
            z-index: 1;
            overflow: hidden;
            overflow-y: auto;
            // 下边设置字体,我的需求是黑底白字
            color: #ffffff;
            line-height: 30px;
            padding: 0 15px;
        }
    }

具体效果:

方法二: 主要是运用element ui 中的el-scrollbar组件,将dialog的body部分包裹起来。代码如下:

// 内容
<template>
  <div>
    <el-dialog
      :visible.sync="dialogVisible"
      width="836px"
      @closed="handleClose">
      <!-- 设置对话框内容高度 -->
      <div style="height:70vh">
        <el-scrollbar>
          <div class="content-box">{{ message }}</div>
        </el-scrollbar>
      </div>
    </el-dialog>
  </div>
</template>
// 样式,只设置了个行高
<style lang="scss" scoped>
  .content-box{
    line-height: 30px;
  }
</style>

具体效果:

总结 

到此这篇关于Element UI Dialog对话框改成固定高度超出部分滚动条滚动的文章就介绍到这了,更多相关Element UI Dialog对话框固定高度内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 解决v-if 与 v-for 同时使用报错的问题

    解决v-if 与 v-for 同时使用报错的问题

    在进行项目开发的时候因为在一个标签上同时使用了v-for和v-if两个指令导致的报错,遇到这个问题如何解决呢?下面小编给大家带来了关于v-if 与 v-for 使用报错问题分析及解决方法,一起看看吧
    2022-03-03
  • Vue组件之间四种通信方式详解

    Vue组件之间四种通信方式详解

    vue框架提供了前端开发组件的思想,可以通过组件来组合成一个完整的页面,都是随着组件数量原来越多,组件之间难免需要相互通信。本文将为大家介绍四种组件间的通信方式,需要的可以参考一下
    2022-01-01
  • VUE html5-qrcode实现H5扫一扫功能实例

    VUE html5-qrcode实现H5扫一扫功能实例

    这篇文章主要给大家介绍了关于VUE html5-qrcode实现H5扫一扫功能的相关资料,html5-qrcode是轻量级和跨平台的QR码和条形码扫码的JS库,集成二维码、条形码和其他一些类型的代码扫描功能,需要的朋友可以参考下
    2023-08-08
  • vue 循环加载数据并获取第一条记录的方法

    vue 循环加载数据并获取第一条记录的方法

    今天小编就为大家分享一篇vue 循环加载数据并获取第一条记录的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-09-09
  • vue中el-table实现无限向下滚动懒加载数据

    vue中el-table实现无限向下滚动懒加载数据

    一次性的加载全部的数据,并且将其渲染到页面上,就会导致页面卡顿,往往采用分页和无限滚动的方式来展示,本文主要介绍了vue中el-table实现无限向下滚动懒加载数据,感兴趣的可以了解一下
    2023-12-12
  • 如何在Vue3项目中操作MySQL数据库

    如何在Vue3项目中操作MySQL数据库

    在Vue3项目中使用axios发送HTTP请求与后端MySQL数据库交互的步骤:1. 安装MySQL数据库并创建数据库表;2. 后端服务器使用Node.js的mysql模块实现MySQL数据库操作接口;3. Vue3项目中使用axios调用这些接口进行数据交互
    2024-11-11
  • vue中如何使用echarts和echarts-gl实现3D饼图环形饼图

    vue中如何使用echarts和echarts-gl实现3D饼图环形饼图

    现在vue是很多公司前端的主流框架,我目前所在公司接触的项目也都是使用vue来实现的,很少有完全使用原生的JavaScript来写项目的了,下面这篇文章主要给大家介绍了关于vue中如何使用echarts和echarts-gl实现3D饼图环形饼图的相关资料,需要的朋友可以参考下
    2023-03-03
  • Vue页面偶尔样式错乱,刷新即恢复的问题及解决

    Vue页面偶尔样式错乱,刷新即恢复的问题及解决

    这篇文章主要介绍了Vue页面偶尔样式错乱,刷新即恢复的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • vue 点击按钮 路由跳转指定页面的实现方式

    vue 点击按钮 路由跳转指定页面的实现方式

    这篇文章主要介绍了vue 点击按钮 路由跳转指定页面的实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • vue中provide、inject的使用方法案例详解

    vue中provide、inject的使用方法案例详解

    本教程是介绍如何在vue中使用provide和inject,在 Vue 中,provide 和 inject 是用于实现祖先组件向后代组件传递数据的一种方式,对vue中provide、inject的使用方法感兴趣的朋友一起看看吧
    2024-02-02

最新评论