直接改 .layui-form-label 的 width 必须加 !important,因 layui 默认用该类控制宽度(2.8+为90px),且受高优先级规则保护;需确保自定义 CSS 在 layui.css 后加载,并推荐使用 px 单位。
你写 label { width: 100px; } 没用,因为 layui 不用原生 label 标签控制宽度,真正起作用的是包裹它的 .layui-form-label 类。这个类默认宽度是 90px(Layui 2.8+),且被内联样式或高优先级规则保护。
实操建议:
<head> 底部或 </body> 前).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="sm" 或 lay-size="lg" 是 layui 提供的快捷方式,它会同步调整 .layui-form-label 宽度、输入框高度和字体大小。但它预设了固定档位:sm 约 90px,lg 约 150px,无法指定 110px 这样的中间值。
注意点:
.layui-form 容器上才全局生效,加在单个 .layui-form-item 上无效.layui-form-label { width: ... } 可能冲突,二者混用时优先级难控,建议二选一开发时快速验证效果,可以直接在 <label class="layui-form-label"> 上加 style="width: 80px;"。但这是权宜之计:
如果你用的是面板式表单(即带边框、标签左对齐的样式),启用 class="layui-form-pane" 后,.layui-form-label 默认变成块级且宽度由内容撑开。此时可以写:
.layui-form-pane .layui-form-label { width: auto; }
但要注意:
white-space: nowrap; overflow: hidden; text-overflow: ellipsis; 防止错位!important 覆盖 .layui-form-label 的 width。其他方法要么受限、要么难维护,尤其当表单字段多、中英文混排、还要适配小屏时,硬宽度 + px 单位是最可控的。