ElementPlus下拉框输入框对齐问题

news2024/9/22 7:01:56

1.问题

2.解决方法

2.1label-width

说明:el-form中label-width设置为auto

 

2.2 label-wdith固定值

说明:如果在el-form-item里面设置了label-width="100px";采用宫格布局。

.demo-one{
  display: grid;
  grid-template-columns: repeat(3,1fr);
}

3源码

<template>
  <div style="width: 900px;margin-left: 200px">
  <el-form
      ref="ruleFormRef"
      :model="ruleForm"
      :rules="rules"
      class="demo-ruleForm"
      :size="formSize"
      status-icon
  >
    <div class="demo-one">
    <el-form-item label="行政区名称" prop="name" label-width="100px">
      <el-input v-model="ruleForm.name" />
    </el-form-item>
    <el-form-item label="类型" prop="region" label-width="100px">
      <el-select v-model="ruleForm.region" placeholder="Activity zone" >
        <el-option label="Zone one" value="shanghai" />
        <el-option label="Zone two" value="beijing" />
      </el-select>
    </el-form-item>
    <el-form-item label="行政区名称" prop="name" label-width="100px">
      <el-input v-model="ruleForm.name" />
    </el-form-item>
    </div>
    <div class="demo-one">
      <el-form-item label="行政区名称" prop="name" label-width="100px">
        <el-input v-model="ruleForm.name" />
      </el-form-item>
      <el-form-item label="行政区名称" prop="name" label-width="100px">
        <el-input v-model="ruleForm.name" />
      </el-form-item>
      <el-form-item label="类型" prop="region" label-width="100px">
        <el-select v-model="ruleForm.region" placeholder="Activity zone" >
          <el-option label="Zone one" value="shanghai" />
          <el-option label="Zone two" value="beijing" />
        </el-select>
      </el-form-item>
    </div>
  </el-form>
  </div>
</template>

<script lang="ts" setup>
import { reactive, ref } from 'vue'
import type { ComponentSize, FormInstance, FormRules } from 'element-plus'

interface RuleForm {
  name: string
  region: string
  count: string
  date1: string
  date2: string
  delivery: boolean
  location: string
  type: string[]
  resource: string
  desc: string
}

const formSize = ref<ComponentSize>('default')
const ruleFormRef = ref<FormInstance>()
const ruleForm = reactive<RuleForm>({
  name: 'Hello',
  region: '',
  count: '',
  date1: '',
  date2: '',
  delivery: false,
  location: '',
  type: [],
  resource: '',
  desc: '',
})

const locationOptions = ['Home', 'Company', 'School']

const rules = reactive<FormRules<RuleForm>>({
  name: [
    { required: true, message: 'Please input Activity name', trigger: 'blur' },
    { min: 3, max: 5, message: 'Length should be 3 to 5', trigger: 'blur' },
  ],
  region: [
    {
      required: true,
      message: 'Please select Activity zone',
      trigger: 'change',
    },
  ],
  count: [
    {
      required: true,
      message: 'Please select Activity count',
      trigger: 'change',
    },
  ],
  date1: [
    {
      type: 'date',
      required: true,
      message: 'Please pick a date',
      trigger: 'change',
    },
  ],
  date2: [
    {
      type: 'date',
      required: true,
      message: 'Please pick a time',
      trigger: 'change',
    },
  ],
  location: [
    {
      required: true,
      message: 'Please select a location',
      trigger: 'change',
    },
  ],
  type: [
    {
      type: 'array',
      required: true,
      message: 'Please select at least one activity type',
      trigger: 'change',
    },
  ],
  resource: [
    {
      required: true,
      message: 'Please select activity resource',
      trigger: 'change',
    },
  ],
  desc: [
    { required: true, message: 'Please input activity form', trigger: 'blur' },
  ],
})

const submitForm = async (formEl: FormInstance | undefined) => {
  if (!formEl) return
  await formEl.validate((valid, fields) => {
    if (valid) {
      console.log('submit!')
    } else {
      console.log('error submit!', fields)
    }
  })
}

const resetForm = (formEl: FormInstance | undefined) => {
  if (!formEl) return
  formEl.resetFields()
}

const options = Array.from({ length: 10000 }).map((_, idx) => ({
  value: `${idx + 1}`,
  label: `${idx + 1}`,
}))
</script>


<style scoped>
.demo-one{
  display: grid;
  grid-template-columns: repeat(3,1fr);
}
</style>

4.击穿样式

说明:下拉框与输入框的样式击穿

.el-select,
 .el-input_inner {
  width: 100%;
}

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2069876.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++:vector篇

前言&#xff1a; 本篇仅介绍vector中常用的函数接口&#xff0c;如果需要详细的请到官网查看。 vector是一种动态数组&#xff0c;能够自动调整大小。与数组类似&#xff0c;vector使用连续内存来存储元素&#xff0c;允许高效访问&#xff0c;但可以动态增加容量。为了应对容…

买了服务器后如何正确挂载数据盘|什么是系统盘,什么是数据盘

一、前言 我们买了服务器后&#xff0c;一般会再买一个数据盘&#xff0c;如果没有数据盘&#xff0c;万一服务器系统出现问题后数据丢失就完了&#xff0c;什么数据都没了&#xff0c;所以为了避免意外的发生&#xff0c;我们通常会再买一个数据盘 如上图&#xff0c;我就在…

差一点通关某公司面试靶场

没有web4和web8&#xff0c;web2的4没做出来。 web1 国光ssrf改版靶场 1 直接读取flag 3 使用file协议读取hosts IP为172.18.240.5 dict探针内网主机开启常见端口 172.18.240.1:80 172.18.240.5:3306 172.18.240.1:3306 172.18.240.5:80 172.18.240.5:8080 172.18.240.1:…

RocketMQ Dashboard

rocketmq-dashboard是一个可视化查看和管理RocketMQ消息队列的工具 官方地址&#xff1a;RocketMQ Dashboard | RocketMQ 1、点击下载源码 2、下载并解压&#xff0c;切换至源码目录rocketmq-dashboard-1.0.0 3、修改配置文件 4、编译 rocketmq-dashboard打成jar包 &#xf…

【2024最新】注册Github账号图文教程

GitHub 是一个全球最大的开源代码托管平台&#xff0c;它提供了基于 Git 的版本控制和协作功能&#xff0c;使开发者能够共享、管理和协作开发项目。用户可以创建、克隆、编辑代码&#xff0c;并通过分支、合并请求等工具进行协同工作。GitHub 还提供社区交流、项目管理和代码审…

qt圆环饼状图,非常小的窗口都能显示

非常小的窗口都能显示 QT core gui charts#include <QtCharts> using namespace QtCharts;//创建饼状图 void MainWindow::createpieSewies() {//饼状图QPieSeries * my_pieSeries new QPieSeries();//中间圆与大圆的比例my_pieSeries->setHoleSize(0.35);//…

Spring MVC、Spring Boot和Spring Cloud

一、Spring MVC 主要特点 传统的基于Servlet的Web框架: 需要手动配置Servlet、Filter等。 配置灵活: 可以使用XML或Java类来定义Bean和依赖关系。 依赖于Web容器: 需要部署到外部Web容器&#xff08;如Tomcat、Jetty&#xff09;中运行。 视图技术支持: 支持JSP、Thymelea…

DALI-2 NFC调光解码方案,电源模块,解码板

DALI-2 DT6 NFC 调光模块 一、产品概述 深圳锐科光电科技有限公司的DALI2 DT6&D4i&#xff0c;NFC调光模块&#xff0c;符合IEC62386-101 Ed2.0、IEC62386-102 Ed2.0和 IEC62386-207 Ed1 adapted to Ed2&#xff08;DT6&#xff09;标准协议。采用国外进口单片机芯片&#…

阮一峰《TypeScript 教程》学习笔记一类型系统、数组、元祖

阮一峰《TypeScript 教程》 本篇文章主要记录浏览阮一峰《TypeScript 教程》书籍的过程中本人不会的一些TypeScript的用法。当然&#xff0c;可以说&#xff0c;我都不会哈哈哈&#xff0c;不过有的用法比较奇葩的我就不记录了&#xff0c;只记录我觉得项目中会用到&#xff0c…

Python类型检查器库之typeshed使用详解

概要 在 Python 开发中,类型检查器(如 mypy)和 IDE(如 PyCharm)能够显著提高代码的可读性和可维护性。然而,Python 本身是一种动态类型语言,标准库和第三方库通常没有类型注解。这就需要一个包含这些库类型信息的资源库,以便类型检查器能够正常工作。Typeshed 正是这样…

【Python】学习Python的流程,有这一篇资料就够了,带你深入了解Python!!!

点击免费领取《CSDN大礼包》&#xff1a;Python入门到进阶资料 & 实战源码 & 兼职接单方法 安全链接免费领取 书籍推荐 《Python编程:从入门到实践》 作者&#xff1a;埃里克马瑟斯&#xff08;Eric Matthes&#xff09;特点&#xff1a;通过实际项目引导读者学习Pyt…

前端生成验证码

一.效果图 二、实现 2.1html <template><div class"outer-box"><div class"code-box"><div class"inout-code"><label class"label" for"inputCode">验证码&#xff1a;</label><…

内存管理篇-05物理页面的迁移类型migratetype

本节内容依旧是对上节课伙伴系统的补充&#xff0c;主要介绍了新版伙伴系统的页面迁移相关的内容 为什么要引入页面迁移类型&#xff1f;新版本伙伴系统针对老版本的伙伴系统的升级改进。主要优化memory compaction内存碎片整理的过程。 页面迁移实际上就是伙伴系统中free_area…

第一次get到学习大模型的沉浸感和成就感 ,大模型入门必看!!<大模型应用开发极简入门>(PDF分享)

人工智能大潮已来&#xff0c;不加入就可能被淘汰。就好像现在职场里谁不会用PPT和excel一样&#xff0c;基本上你见不到。 而大模型是人工智能代表&#xff0c;潜力与使用方式有关。使用好大模型可提高效率&#xff0c;让人获得更好的待遇和更多机会。所以今天给大家推荐一本…

【STM32】中断

中断与GPIO一样是STM32中非常常用的东西&#xff0c;以我一个写上位机的人的理解&#xff0c;它相当于上位机程序中多线程的地位&#xff0c;因为多线程和中断都是为了提高某些响应的实时性。悄悄说一句&#xff0c;我觉得中断在一定程度上比多线程还好用。哈哈哈哈哈哈哈~ 大部…

竖图秒变横屏壁纸!AI绘画SD最强控制插件ControlNet教程,一键实现图片的扩展式填充真的太强了!

大家好&#xff0c;我是画画的小强 经常用PhotoShop作图的人都知道&#xff0c;自从去年PS2023beta版的发布&#xff0c;引入了AI绘画给广大创作者带来了不小的惊喜&#xff0c;最主要的就是它的“创成式填充”&#xff0c;通过现有图片可以进行扩展和延展&#xff0c;其强大的…

Vue2 中 $set 用法详细讲解

给变量重复赋值&#xff0c;Vue 监测不到数据变化。这个时候&#xff0c;双向绑定就失效了。 1、为什么要用set&#xff1f; 在vue中&#xff0c;并不是任何时候数据都是双向绑定的。 在官方文档中&#xff0c;有这样一段话&#xff0c;如下&#xff1a; 从文档得知&#xff…

wpf 定制 个性圆角信息面板

先上图&#xff1a; 代码实现&#xff1a; <Canvas Grid.Column"1"><Border Background"#5665F4" BorderBrush"#5665F4" BorderThickness"0.5" CornerRadius"10,10,10,30"Width"180" Height"165&qu…

CSS背景与边框——WEB开发系列18

网页设计中&#xff0c;背景和边框是用于提升视觉效果的关键元素。CSS&#xff08;层叠样式表&#xff09;提供了丰富的功能来定制这些视觉效果&#xff0c;确保网页看起来既美观又符合设计需求。 一、背景样式 背景样式在网页设计中起着至关重要的作用。它们可以用来增加页面…

qt在ui上面给QWidget设置布局

如图所示&#xff0c;我们无法给QWidget设置布局 拖拽一个GridLayout进来&#xff0c;设置QWidget布局&#xff0c;然后删掉该GridLayout 结果QWidget设置网格布局