Naive UI 分页组件样式不生效是怎么回事? 设计师亚美 提问于 2026-02-25 21:01:18 阅读 18 组件 我在用 Naive UI 的 Pagination 组件时,想自定义分页按钮的间距,但加了 CSS 样式完全没反应。是不是被组件内部样式覆盖了? 我已经尝试在父容器上加了 class,也用了 !important,但还是不行。控制台也没报错,就是样式没变化。 .custom-pagination .n-pagination-item { margin: 0 8px !important; } 我来解答 赞 2 收藏 分享 生成中... 手机扫码查看 复制链接 生成海报 反馈 发表解答 您需要先 登录/注册 才能发表解答 1 条解答 A. 瑞玲 Lv1 你这个写法的问题在于 Naive UI 的 Pagination 组件是用 Shadow DOM 渲染的,外层的 .custom-pagination 选不中内部的 .n-pagination-item,哪怕加了 !important 也没用。 官方文档里说,要覆盖 Shadow DOM 内部样式,得用 ::deep(Vue 3)或者 :deep(SCSS 语法)穿透,或者直接用全局样式加更高优先级的属性选择器。 最稳妥的写法是这样: :deep(.n-pagination-item) { margin: 0 8px !important; } 或者如果你是用原生 CSS(非预处理器),就写: ::deep(.n-pagination-item) { margin: 0 8px !important; } 注意要放在组件的 里,不然全局生效的话可能影响其他分页组件。 另外提醒一句,Naive UI 2.38 之后改了分页组件的内部结构,有些类名可能变了,如果你用的是老版本,建议先在浏览器开发者工具里看看实际渲染出来的 DOM 结构和类名,别光凭名字猜。 回复 点赞 2 2026-02-25 21:03 加载更多 相关推荐 1 回答 15 浏览 Naive UI 的表格分页怎么和后端数据联动? 我用 Naive UI 的 NDataTable 做了个表格,现在想实现分页功能,但文档里只说了怎么配置分页组件,没讲怎么和后端接口配合。比如我点第二页,怎么自动请求第 2 页的数据? 我试过把 pa... A. 雨帆 框架 2026-02-26 17:31:20 1 回答 10 浏览 Naive UI 分页组件怎么绑定当前页码? 我在用 Naive UI 的 Pagination 组件,想通过 v-model 绑定当前页码,但页面一加载就报错说“Missing required prop: 'page'”,可我明明已经用 v-... Des.紫萱 组件 2026-02-24 22:05:18 1 回答 10 浏览 Naive UI 的 DataTable 表格列宽为啥不生效? 我在用 Naive UI 的 DataTable 组件,想通过 CSS 控制某一列的宽度,但加了样式完全没反应,是不是哪里写错了? 我试过在 table 的 class 里加自定义样式,也试过直接用 ... Air-涵菲 组件 2026-02-27 11:09:20 1 回答 21 浏览 Naive UI的Pagination切换页码后怎么数据没更新? 我在用Naive UI的分页组件做数据分页,页面初始化时数据正常显示,但切换页码后数据还是第一页的内容,控制台没报错。我用了@update:page监听页码变化,代码是这样的: <n-pagin... 新艳 Dev 组件 2026-02-15 22:17:24 1 回答 17 浏览 Naive UI的Select组件怎么实现选项内容换行显示? 在用Naive UI的Select组件时,发现选项内容过长会挤在一起,试过在选项值里加<br>标签和用CSS设置white-space: pre-line都不生效,有没有什么办法能让选项文... 长孙保霞 框架 2026-02-15 17:12:26 2 回答 46 浏览 Naive UI的Input组件value类型报错该怎么处理? 我在用Naive UI的NInput组件时遇到了TypeScript错误,明明按照文档传了value和onChange,但IDE一直报错: import { NInput } from 'naive-... 程序猿芯依 组件 2026-02-14 20:07:30 2 回答 18 浏览 Naive UI分页跳转后数据没变怎么处理? 用Naive UI的Pagination做分页时,切换页码后数据没变卡了好久了。我按文档写了onChange事件,也传了当前页码参数,但每次请求接口返回的数据还是第一页的内容。 代码大概是这样写的:&... Newb.永臣 组件 2026-02-10 14:27:29 1 回答 36 浏览 Naive UI的Tree组件点击节点后子节点不显示怎么办? 在用Naive UI的Tree组件时,按照文档写了动态加载子节点的逻辑,但点击父节点后子节点数据更新了,界面就是不显示出来: <n-tree :key="treeKey" :... Designer°俊俊 组件 2026-02-10 09:22:34 2 回答 42 浏览 Naive UI的Pagination切换页码后数据没更新怎么办? 用Naive UI的Pagination组件做分页,切换页码时数据没变化,页面还是第一页的内容。 在Vue组件里绑定了page变量,通过@update:page="fetchData"监听事件,调接口... 令狐新霞 组件 2026-02-07 09:23:31 2 回答 20 浏览 Naive UI Popover内容不显示是怎么回事? 我在用Naive UI的Popover组件时,设置触发方式和内容后气泡就是不显示。按照文档写了trigger="click"和content="提示信息",但点击按钮没反应。检查过DOM结构没问题,控... 极客洺华 组件 2026-02-11 10:19:34
.custom-pagination选不中内部的.n-pagination-item,哪怕加了!important也没用。官方文档里说,要覆盖 Shadow DOM 内部样式,得用
::deep(Vue 3)或者:deep(SCSS 语法)穿透,或者直接用全局样式加更高优先级的属性选择器。最稳妥的写法是这样:
或者如果你是用原生 CSS(非预处理器),就写:
注意要放在组件的
里,不然全局生效的话可能影响其他分页组件。另外提醒一句,Naive UI 2.38 之后改了分页组件的内部结构,有些类名可能变了,如果你用的是老版本,建议先在浏览器开发者工具里看看实际渲染出来的 DOM 结构和类名,别光凭名字猜。