当前位置:首页 » 《我的小黑屋》 » 正文

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

9 人参与  2024年03月28日 18:50  分类 : 《我的小黑屋》  评论

点击全文阅读


问题描述

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>

具体效果:

在这里插入图片描述


点击全文阅读


本文链接:http://zhangshiyu.com/post/87374.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1