直接删除 .layui-edge 样式即可去掉 layui select 右侧下拉箭头,因其是控制箭头显示的核心类;禁用时需同时加 disabled 属性和 form.render('select'),并用 .layui-disabled-black { color: #000 !important; } 和 .layui-disabled-black + .layui-form-select .layui-edge { display: none !important; } 实现文字黑色与箭头隐藏。

layui select 怎么去掉右侧下拉箭头
直接删掉 .layui-edge 样式即可,这是 Layui 控制箭头显示的核心类。原生 select 的美化箭头由这个伪元素生成,不是 background 或 iconfont,硬覆盖容易错位或失效。
为什么 display: none 不起作用
因为 .layui-edge 是用 ::after 伪元素实现的,且带 !important;单纯写 .layui-edge { display: none; } 可能被权重更高的规则覆盖。
- 必须加
!important:.layui-edge { display: none !important; } - 不能只针对
select写,要作用到实际渲染出的节点上 —— 它在.layui-form-select内部,所以更稳妥的是:.layui-form-select .layui-edge { display: none !important; } - 如果用了
lay-search,搜索框右侧也有一个类似图标(.layui-select-search .layui-icon),需单独处理:.layui-select-search .layui-icon { display: none !important; }
禁用状态下怎么让文字变黑+箭头消失
禁用时默认灰字+半透明箭头,但业务常要求“禁用但清晰可见”。仅设 disabled 属性不够,Layui 的 UI 层不会自动同步样式。
- HTML 中加
disabled同时加自定义 class:<select disabled class="layui-disabled-black"> - CSS 覆盖两处:
.layui-disabled-black, .layui-disabled-black:hover { color: #000 !important; }和.layui-disabled-black + .layui-form-select .layui-edge { display: none !important; } - JS 动态禁用时,记得调
form.render('select'),否则.layui-disabled-black类加了也不生效
隐藏箭头后要注意什么
用户失去视觉提示,可能误以为不可交互。尤其在表格内或密集表单中,容易引发操作困惑。
- 建议搭配 hover 或 focus 状态给点反馈,比如:
.layui-form-select:hover .layui-select-title { opacity: 0.8; } - 如果整个表单都禁用,不如直接
display: none或layui-hide整个.layui-form-item,比只藏箭头更明确 - 移动端 Safari 对隐藏箭头较敏感,部分版本会把原生
select切换为全屏选择器 —— 若出现此问题,说明你没用 Layui 的 JS 下拉(即没加lay-filter),得确认是否漏了form.render()


















