Layui-input 高度重置需用更具体选择器或!important,同时需同步调整 .layui-form-label 的 padding、确保 line-height 与 height 一致、修正表格内 input 对齐及验证图标定位。

layui-input 高度被 CSS 重置后不生效?
直接写 .layui-input { height: 36px } 多数情况下无效,因为 Layui 内部样式优先级更高,且部分版本会用 !important 覆盖。必须用更具体的路径或带权重的选择器。
- 优先使用官方推荐写法:
.layui-input, .layui-select, .layui-textarea { height: 36px; line-height: 36px\9; }(\9是 IE 兼容 hack,保留即可) - 若仍被覆盖,加
!important:如height: 36px !important;,但仅限局部调试,上线前应查清覆盖源 - 避免只改
.layui-input,Layui 表单控件高度需统一控制——.layui-form-label的padding也影响视觉对齐,建议同步调整:.layui-form-label { padding: 6px 15px; }
input 高度和 label 不对齐怎么办
常见现象是 input 看起来“悬浮”或“下沉”,本质是 line-height、padding、box-sizing 不匹配。Layui 默认 box-sizing 是 border-box,但自定义 height 后容易失衡。
- 确保
box-sizing: border-box未被意外覆盖(检查 DevTools 中 computed 样式) -
line-height必须与height一致,否则文字垂直居中失效;例如设height: 36px,就配line-height: 36px - label 的
padding-top和padding-bottom总和应接近 input 的height,否则视觉错位;可微调:.layui-form-label { padding: 8px 15px; } - 移动端要注意
font-size变化导致行高撑开,建议用rem或固定font-size: 14px锁定基础字号
表格内嵌 input 高度异常怎么调
在 templet 中渲染的 input,常比表格行高矮一截,或上下留白过大,是因为表格单元格默认 padding 和 vertical-align 干扰了控件渲染。
- 给 templet 里的 input 外层加
style="display: flex; align-items: center;"容器,消除 vertical-align 影响 - 显式重置单元格内边距:
.layui-table-cell > .layui-input { margin: 0; padding: 0; } - 若用
layui-input-inline,注意它自带vertical-align: middle,但表格单元格默认是baseline,冲突时加vertical-align: middle !important - 别依赖
height: 100%——表格单元格高度由.layui-table-cell控制,而该类默认height: 36px(见知识库),需同步调整它:.layui-table-cell { height: 36px; line-height: 36px; }
高度改了但表单验证图标错位
当 input 高度大于默认 36px,右侧的 lay-verify 图标(如 ✅ ❌)会偏上或遮挡,因为图标定位依赖原始 line-height 计算。
- Layui 验证图标通过伪元素
::after绝对定位,top 值硬编码为50%减半图标高度,所以 input 高度变后需手动修正 - 加覆盖样式:
.layui-form-danger .layui-icon, .layui-form-success .layui-icon { top: 50%; transform: translateY(-50%); } - 如果用了自定义验证图标,确保其
font-size与 inputheight匹配(例如 height: 42px 时,图标 font-size 建议设为 20px) - form.render() 后再执行样式注入,否则初始化时图标位置已固定


















