layui表单怎么设置横向布局和纵向布局

老萱同学_5128

老萱同学_5128

2026-08-18

331人浏览

原创

layui表单默认纵向布局,改横向需用栅格系统:将多个layui-form-item置于layui-row内,并用layui-col-*类(如layui-col-md6)分配宽度,使表单项并排显示,同时注意label与控件对齐及响应式断点选择。

layui表单怎么设置横向布局和纵向布局

layui 表单默认是纵向布局,怎么改成横向?

layui 的 form 模块默认所有表单项(input、select、textarea 等)都是垂直堆叠的,也就是纵向布局。要实现横向布局,核心不是改 form 本身,而是靠 layui 提供的栅格系统(layui-col- 类)手动控制容器宽度和排列方式。

关键点:layui 表单不提供 layout="horizontal" 这类开关,必须用 CSS 类显式控制。直接给 form 加 class="layui-form-item" 不会自动横排——每个 layui-form-item 默认占满一行,想横排就得把多个 layui-form-item 放进同一行栅格容器里。

  • 横向布局本质是「多表单项共处一行」,需用 layui-row + layui-col-xs* 包裹多个 layui-form-item
  • layui-form-label 宽度固定为 100px(可覆盖),横向时 label 和控件需在同一行内对齐,否则容易错位
  • 如果 label 文字过长,建议加 white-space: normal 或用 layui-text 控制换行

横向布局常见写法和易错点

典型结构如下(注意 class 层级和顺序):

<div class="layui-form">
  <div class="layui-row">
    <div class="layui-col-md6">
      <div class="layui-form-item">
        <label class="layui-form-label">姓名</label>
        <div class="layui-input-block">
          <input type="text" name="name" lay-verify="required" class="layui-input">
</div>
      </div>
    </div>
    <div class="layui-col-md6">
      <div class="layui-form-item">
        <label class="layui-form-label">邮箱</label>
        <div class="layui-input-block">
          <input type="text" name="email" lay-verify="email" class="layui-input">
</div>
      </div>
    </div>
  </div>
</div>

容易踩的坑:

  • 漏掉 layui-row —— 没它,layui-col- 不生效
  • 在 layui-form-item 外层直接套 layui-col-,但没包 layui-row,导致响应式失效
  • label 和 input 都用了 layui-form-label / layui-input-block,但没把它们放进同一个 layui-form-item,校验样式会错乱
  • 移动端下 layui-col-md6 不缩放,应优先用 layui-col-xs6 或搭配 layui-col-sm6

纵向布局就是默认行为,但要注意“伪横向”干扰

所谓“纵向布局”,其实就是不做任何栅格包裹,每个 layui-form-item 独占一行。但实际开发中常有人误以为加了 layui-form-pane 就是纵向——其实 layui-form-pane 是「面板式表单」,label 在左、控件在右,视觉上像横向,但仍是单行一个 item,属于纵向语义下的变体。

深蓝色网站后台管理系统layui框架模板-AdminPro
深蓝色网站后台管理系统layui框架模板-AdminPro

一款深蓝色网站后台管理系统layui框架模板

下载

如果你想要真正紧凑的纵向堆叠(比如登录页),就别用 layui-form-pane,直接写:

<div class="layui-form">
  <div class="layui-form-item">
    <label class="layui-form-label">用户名</label>
    <div class="layui-input-block">
      <input type="text" name="username" required lay-verify="required">
</div>
  </div>
  <div class="layui-form-item">
    <label class="layui-form-label">密码</label>
    <div class="layui-input-block">
      <input type="password" name="password" required lay-verify="required">
</div>
  </div>
</div>

注意:layui-form-pane 会强制 label 宽度为 90px,且取消边框和间距,适合简洁表单;而默认纵向布局保留完整边框和上下间距,更适合数据录入场景。

label 宽度和对齐怎么微调?

layui 默认 label 宽 100px(layui-form-label 的 width),横向布局时若 label 文字多,容易挤占输入框空间。调整方法只有 CSS 覆盖:

  • 全局改:在自定义 CSS 中加 .layui-form-label { width: 120px; }
  • 局部改:给特定 layui-form-item 加 class,再写对应样式,比如 <div class="layui-form-item my-label"> → <code>.my-label .layui-form-label { width: 80px; }
  • label 左对齐:默认居中,加 text-align: left; 即可
  • input 高度不一致(如 select 比 input 矮):统一加 height: 36px; 或用 layui-input 类保证基础高度
  • 横向布局的复杂点不在 JS,而在 CSS 组合和响应式断点选择。很多人卡在 col 类没生效,其实八成是忘了 layui-row 或写了 layui-col-md6 却在手机上看——这时候得检查 viewport 和是否引入了 layui.css 的完整版本。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
python是前端还是后端
python是前端还是后端

Python属于前端也属于后端,其灵活性和丰富的生态系统使得开发人员能够在不同的领域中灵活运用。本专题为大家提供python相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.11

2283

5

前端如何实现即时通讯
前端如何实现即时通讯

实现即时通讯的方法有WebSocket、Long Polling、Server-Sent Events、WebRTC等等。详细介绍:1、WebSocket,它可以在客户端和服务器之间建立持久连接,实现实时的双向通信,前端可以使用 WebSocket API来创建WebSocket连接,并通过发送和接收消息来实现即时通讯;2、Long Polling,是一种模拟实时通信的技术等等。

2023.10.09

4923

6

前端和后端的区别
前端和后端的区别

前端关注的是用户界面的设计和交互,而后端则注重数据处理和逻辑控制。想了解更多前端后端的相关内容,可以阅读本专题下面的文章。

2024.03.19

6010

13

php和前端的关联介绍
php和前端的关联介绍

php既可以作为前端语言,也可以作为后端语言。想了解更多php和前端的相关内容,可以阅读本专题下面的文章。

2024.03.22

5518

10

前端外包工作内容有哪些
前端外包工作内容有哪些

前端外包工作内容包括:1. 网站和应用程序开发;2. 用户界面和交互设计;3. 用户体验优化;4. 设计和视觉开发;5. 跨浏览器兼容性;6. 性能优化;7. 维护和更新;8. 项目管理和沟通。想了解更多前端的相关内容,可以阅读本专题下面的文章。

2024.05.22

783

5

html5动画制作有哪些制作方法
html5动画制作有哪些制作方法

html5动画制作方法有使用CSS3动画、使用JavaScript动画库、使用HTML5 Canvas等。想了解更多html5动画制作方法相关内容,可以阅读本专题下面的文章。

2023.10.23

3791

6

HTML与HTML5的区别
HTML与HTML5的区别

HTML与HTML5的区别:1、html5支持矢量图形,html本身不支持;2、html5中可临时存储数据,html不行;3、html5新增了许多控件;4、html本身不支持音频和视频,html5支持;5、html无法处理不准确的语法,html5能够处理等等。想了解更多HTML与HTML5的相关内容,可以阅读本专题下面的文章。

2024.03.06

6408

6

html5从入门到精通汇总
html5从入门到精通汇总

想系统掌握HTML5开发?本合集精选全网优质学习资源,涵盖免费教程、实战项目、视频课程与权威电子书,从基础语法到高级特性(Canvas、本地存储、响应式布局等)一应俱全,适合零基础小白到进阶开发者,助你高效入门并精通HTML5前端开发。

2025.12.30

774

19

html5新老标签汇总
html5新老标签汇总

HTML5在2026年持续优化网页语义化与交互体验,不仅引入了如<header>、<nav>、<article>、<section>、<aside>、<footer>等结构化标签,还新增了<video>、<audio>、<canvas>、<figure>、<time>、<mark>等增强多媒体与

2025.12.30

674

12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
ThinkPHP配置开发与CMS后台实战
ThinkPHP配置开发与CMS后台实战

共87课时 | 12.7万人学习

第二十三期_综合实战
第二十三期_综合实战

共89课时 | 10.9万人学习

Layui 快速入门精讲
Layui 快速入门精讲

共5课时 | 1.6万人学习