直接改 .layui-form-label 的 width 必须加 !important,因 layui 默认用该类控制宽度(2.8+为90px),且受高优先级规则保护;需确保自定义 css 在 layui.css 后加载,并推荐使用 px 单位。

直接改 .layui-form-label 的 width 必须加 !important
你写 label { width: 100px; } 没用,因为 layui 不用原生 label 标签控制宽度,真正起作用的是包裹它的 .layui-form-label 类。这个类默认宽度是 90px(Layui 2.8+),且被内联样式或高优先级规则保护。
实操建议:
- 确保自定义 CSS 在 layui.css 之后加载(比如放在
底部或前) - 必须写
.layui-form-label { width: 100px !important; }—— 少了!important很大概率不生效 - 值推荐用
px,别用%或em,flex 布局下百分比行为不可靠 - 如果只改某几个表单项,给外层
.layui-form-item加个 class,比如class="my-special-form",再写.my-special-form .layui-form-label
lay-size 能统一缩放 label 宽度但不能自由设值
lay-size="sm" 或 lay-size="lg" 是 layui 提供的快捷方式,它会同步调整 .layui-form-label 宽度、输入框高度和字体大小。但它预设了固定档位:sm 约 90px,lg 约 150px,无法指定 110px 这样的中间值。
注意点:
- 必须加在
.layui-form容器上才全局生效,加在单个.layui-form-item上无效 - 它和手动写的
.layui-form-label { width: ... }可能冲突,二者混用时优先级难控,建议二选一 - 适合全表单统一紧凑/宽松,不适合局部微调
临时调试可用内联 style,但别上线
开发时快速验证效果,可以直接在 <label class="layui-form-label"></label> 上加 style="width: 80px;"。但这是权宜之计:
- layui 初始化过程中可能重置该 style,导致偶现失效
- 维护成本高,多个表单项要重复写,没法复用
- 上线前务必替换成外部 CSS 规则
.layui-form-pane 模式下 label 宽度可设为 auto
如果你用的是面板式表单(即带边框、标签左对齐的样式),启用 class="layui-form-pane" 后,.layui-form-label 默认变成块级且宽度由内容撑开。此时可以写:
.layui-form-pane .layui-form-label { width: auto; }
但要注意:
- 这会让所有 label 宽度不一致,长标签宽、短标签窄,视觉上可能不整齐
- 右侧输入框不会自动右移补空隙,需额外加 padding 或 margin 控制间距
- 移动端下容易换行,建议搭配
white-space: nowrap; overflow: hidden; text-overflow: ellipsis;防止错位
!important 覆盖 .layui-form-label 的 width。其他方法要么受限、要么难维护,尤其当表单字段多、中英文混排、还要适配小屏时,硬宽度 + px 单位是最可控的。











