关于el-input和el-select宽度不一致问题解决

1. 情景一

单列布局


对于上图这种情况,只需要给el-select加上style="width: 100%"即可,如下:

html 复制代码
<el-select v-model="fjForm.region" placeholder="请选择阀门类型" style="width: 100%">
   <el-option label="区域一" value="shanghai"></el-option>
   <el-option label="区域二" value="beijing"></el-option>
</el-select>

效果如下

2. 情景二

多列布局

这种情况下再给select加上width:100%,达不到预期的效果。
这种情况其实是el-select比el-input多了一个下箭头的icon导致的

解决方案1:
给input加上一个空的icon即可,如下:

html 复制代码
<el-input v-model="fjForm.name" size="medium" suffix-icon="xxxx"></el-input>        

效果如下:

解决方案2:

使用flex布局,为每个el-form-item都设置flex:1,并给select设置width:100%,如下:

  • css
css 复制代码
.box-flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
  • html
html 复制代码
        <div class="box-flex">
          <el-form-item label="阀井名称" style="flex: 1">
            <el-input v-model="fjForm.name" size="medium"></el-input>
          </el-form-item>
          <el-form-item label="阀井编号" style="flex: 1">
            <el-input v-model="fjForm.overlayId" size="medium"></el-input>
          </el-form-item>
        </div>
       <div class="box-flex">
          <el-form-item label="阀门大小" style="flex: 1">
            <el-input v-model="fjForm.valueSize" size="medium"></el-input>
          </el-form-item>
          <el-form-item label="阀门类型" style="flex: 1">
            <el-select v-model="fjForm.valveType" placeholder="请选择阀门类型" style="width: 100%">
              <el-option label="区域一" value="shanghai"></el-option>
              <el-option label="区域二" value="beijing"></el-option>
            </el-select>
          </el-form-item>
        </div>

效果如下:

相关推荐
腻害兔12 分钟前
【若依项目-产品经理视角】RuoYi-Vue-Pro 源码拆解:MES 制造执行模块,一个被严重低估的「工业级 ERP 核心」
vue.js·产品经理·制造
shawxlee13 分钟前
vue3+axios挑战最简洁实用的配置封装+接口调用:请求拦截器、响应拦截器、通用请求方法(单个请求/并发请求/下载文件)、统一接口管理
前端·经验分享·vue·接口·axios·api
yuhaiqiang39 分钟前
上线一个人静态网站需要多少钱,难不难?
前端·后端·程序员
宸津-代码粉碎机43 分钟前
Jar热部署进阶实战|修复原生方案OOM与类冲突问题,生产级无BUG优化方案
java·大数据·服务器·开发语言·前端·人工智能·python
To_OC9 小时前
写了三遍 Todo List,我终于搞懂了 React 父子组件到底怎么通信
前端·javascript·react.js
勇往直前plus10 小时前
Vue3(篇一) 核心概念——响应式模板语法与组件基础
前端·javascript·vue.js
咩咩啃树皮10 小时前
第43篇:Vue3计算属性(computed)完全精讲——缓存机制、依赖计算、业务最优解
前端·vue.js·缓存
用户9385156350711 小时前
从零搭建 AI 日记助手:用 Milvus 向量数据库 + RAG 让机器读懂你的每一天
javascript·人工智能·全栈
徐小夕12 小时前
花了一周,3亿tokens,我开源了一款 Word 文档智能审查平台,文稿自动质检+可视化分析,告别低效人工审核
前端·算法·github
a11177612 小时前
坦克大战3D Three.js 3D (开源项目)
开发语言·javascript·3d