Layui分页圆角必须通过CSS覆盖.layui-laypage a、.layui-laypage-curr及.layui-laypage-em等子元素并加!important实现,JS配置无效;需注意父容器overflow:hidden裁切、表格td内padding不足及移动端适配等问题。

直接改 .layui-laypage 子元素的 border-radius,别碰 JS 配置
layui 分页的圆角样式不能通过 laypage.render() 的参数控制,所有视觉表现都由 CSS 类决定。你改 theme、prevText 或任何 JS 字段都没用。真正起作用的是渲染后生成的 DOM 结构里那几个固定类名,必须用 CSS 覆盖。
常见错误是只写 .layui-laypage { border-radius: 6px; }——这只会给最外层容器加圆角,但按钮本身还是直角,视觉上完全没变化。
-
.layui-laypage a:所有页码按钮(含“上一页”“下一页”),需设border-radius: 4px !important -
.layui-laypage .layui-laypage-curr:当前页容器,建议设border-radius: 4px !important -
.layui-laypage .layui-laypage-curr .layui-laypage-em:当前页内那个蓝底白字的小块,它才是真正带背景和圆角的元素,也得加border-radius: 4px !important - 如果用了“跳至”功能,还要额外覆盖
.layui-laypage-jump button,否则跳转按钮仍是直角
!important 不是可选项,是必须项
Layui 在渲染分页时会往每个 和 上写内联 style,比如 style="background-color:#009688;"。普通 CSS 规则权重根本压不住,不加 !important 的圆角声明在 DevTools 里基本都会被划掉。
这不是妥协,是事实。Layui 2.8+ 尤其明显,内联样式优先级极高。
- 只对需要覆盖的属性加
!important,比如border-radius、background-color、border - 不要整条规则都加,例如
.layui-laypage a { border-radius: 4px !important; color: #333 !important; }是合理写法 - 如果你用 Vue 单文件组件 + scoped,得用
:deep(.layui-laypage a)穿透,再加!important
父容器或表格布局会偷偷裁掉圆角
即使 CSS 全写对了,圆角也可能“看不见”。最常见原因是父容器设置了 很多人改完页码按钮圆角,发现“跳至”按钮还是直角,或者当前页那个小蓝块(
圆角生效的关键不在“写了多少”,而在“选中了哪个真实 DOM 节点”和“有没有让浏览器真正执行它”。打开 DevTools,右键点击任意页码 → “Inspect”,看它最终匹配哪条 CSS 规则,然后照着那条规则的完整选择器去覆盖——比查文档快得多。overflow: hidden,或者分页被塞进 的某个
里,而表格单元格默认 padding 太小、没有预留圆角空间。
overflow: hidden;如果有,要么去掉,要么同步给它加相同值的 border-radius
table.render() 的 page: true),确认 .layui-table-page 没被设固定宽或 max-width
中使用时,手动加 padding: 6px 10px,否则顶部/底部圆角容易被截断
@media (max-width: 768px) { .layui-laypage a { border-radius: 3px !important; } }
“跳至”按钮和当前页小蓝块要单独处理
.layui-laypage-em)边缘发硬——这是因为它们是独立节点,CSS 选择器没命中。
,选中器必须写成 .layui-laypage-jump button,且加 !important
.layui-laypage-em,不是 .layui-laypage-curr;后者默认透明背景,只控制 padding 和边框,只改它等于白改.layui-laypage .layui-laypage-curr, .layui-laypage .layui-laypage-curr .layui-laypage-em
border-radius: 50% 做圆形按钮——页码多时会挤压文字,4–6px 圆角更稳妥










