layui radio单选框无法通过width/height配置调整大小,需用css覆盖伪元素尺寸及外层padding;关键样式为.layui-form-radio-i宽高、::after圆点尺寸和.layui-form-radio的padding。

layui radio 单选框本身不能直接调大小
layui 的 type: 'radio' 列是用伪元素(::before)模拟的圆点,底层没暴露 size 控制接口。你改 width 或 height 配置项完全无效——这些参数只对普通列起作用,对 type: 'radio' 列会被忽略。
真正生效的是 CSS 覆盖 .layui-table-cell 的内边距和伪元素
单选框视觉大小由两部分决定:容器单元格的 padding 和圆点本身的 font-size / border。必须用高优先级 CSS 强制覆盖:
- 给表格加自定义 class,比如
class="my-table" - 在 layui CSS 加载之后写如下样式:
.my-table .layui-table-cell .layui-form-radio-i { width: 18px !important; height: 18px !important; border-width: 2px !important; } .my-table .layui-table-cell .layui-form-radio-i::after { width: 10px !important; height: 10px !important; left: 3px !important; top: 3px !important; } - 如果发现点击热区变小,同步调整
.layui-form-radio的padding,例如:padding: 0 12px !important;
别碰 width/minWidth 配置,它们对 radio 列无意义
你在列定义里写 {type: 'radio', width: 60} 或 minWidth: 60,不会改变圆点尺寸,只会撑宽整列容器——这容易导致表头错位或拖拽失效。radio 列的宽度控制逻辑和普通列不同,它默认占固定空间(约 40–50px),靠 CSS 内部缩放,不是靠配置项驱动。
移动端适配要额外处理点击区域
小屏下手指点不准?光放大圆点不够,得扩大可点击区域:
- 加
padding: 8px 12px !important;到.layui-form-radio外层标签 - 确保父
.layui-table-cell没设overflow: hidden,否则 padding 被裁剪 - 避免用
transform: scale(),会破坏与相邻列的对齐基准线











