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对话框固定高度内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Vue父子组件传值的一些坑

    Vue父子组件传值的一些坑

    这篇文章主要介绍了Vue父子组件传值的一些坑,帮助大家更好的理解和使用vue父子组件,感兴趣的朋友可以了解下
    2020-09-09
  • 关于vue-treeselect绑值、回显等常见问题的总结

    关于vue-treeselect绑值、回显等常见问题的总结

    这篇文章主要介绍了关于vue-treeselect绑值、回显等常见问题的总结,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • vue+canvas实现拼图小游戏

    vue+canvas实现拼图小游戏

    这篇文章主要为大家详细介绍了vue+canvas实现拼图小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-09-09
  • vue使用SVG实现圆形进度条音乐播放

    vue使用SVG实现圆形进度条音乐播放

    这篇文章主要为大家详细介绍了vue使用SVG实现圆形进度条音乐播放,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • vue3中的抽离封装方法实现

    vue3中的抽离封装方法实现

    vue3中的任何一个组合式api都可以单独抽离出去在另一个文件,最后只需要回归到setup()中即可,这篇文章主要介绍了vue3的抽离封装方法,需要的朋友可以参考下
    2022-08-08
  • vue实现简单转盘抽奖功能

    vue实现简单转盘抽奖功能

    这篇文章主要为大家详细介绍了vue实现简单转盘抽奖功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • vue 自定义 select内置组件

    vue 自定义 select内置组件

    这篇文章主要介绍了vue 自定义内置组件 select的相关知识,整合了第三方jquery 插件select2,具体实例代码大家参考下本文
    2018-04-04
  • VueJS 取得 URL 参数值的方法

    VueJS 取得 URL 参数值的方法

    form-create 是一个可以通过 JSON 生成具有动态渲染、数据收集、验证和提交功能的表单生成器。本文给大家简单介绍了VueJS U取得RL 参数值的方法,详细给大家介绍了vue自定义表单生成器可根据json参数动态生成表单效果,感兴趣的朋友一起看看吧
    2019-07-07
  • Vue使用driver.js做引导页

    Vue使用driver.js做引导页

    Driver.js是一个功能强大且高度可定制的基于原生JavaScript开发的新用户引导库,本文主要介绍了Vue使用driver.js做引导页,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • element多个table实现同步滚动的示例代码

    element多个table实现同步滚动的示例代码

    本文主要介绍了element多个table实现同步滚动,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09

最新评论