关于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>

效果如下:

相关推荐
陈随易13 小时前
纯 Go 写的 JS 引擎,跑分超过了 C 语言的 QuickJS
前端·后端·程序员
子兮曰14 小时前
Chrome 权限元素实战:144 与 151 的渐进增强写法
前端·javascript·chrome
IT_陈寒15 小时前
Redis连接池泄漏那次,我差点把生产环境搞崩了
前端·人工智能·后端
强尼银手15 小时前
我花一天做了个格斗游戏原型,判定全对,然后被「美术」劝退了
前端·javascript
石小石Orz15 小时前
AI 正在蚕食我们的编码能力
前端·后端·算法
陈随易15 小时前
专注飞机 FocusFlight,两个人把番茄钟做成了一趟航班
前端·后端·程序员
总要学点什么16 小时前
第98篇:三维特效-材质线效果——给一条线换十种材质,虚线的图案只填了一半
开发语言·前端·javascript·ecmascript·gis·webgl·材质
10share16 小时前
基于大模型的 i18n 方案:把中文原文当 Key,轻松搞定多语言维护
前端·vue.js
OpsEye17 小时前
混合云 AI 架构,如何统一做敏感内容拦截?
javascript·ai编程
Funlang18 小时前
给机器写的 JavaScript 造个笼子
开发语言·javascript·ecmascript