桌面卸载工具深度解析:如何彻底清除软件残留与注册表痕迹
简介这款Windows轻量级卸载工具面向饱受软件残留困扰的普通用户和桌面维护场景能针对卸载不完全、注册表遗留导致系统变慢或磁盘空间被占用等问题提供定向清理且无需安装解压后即可直接运行。压缩包共18个文件整体仅4.34MB包含exe主程序、命令行辅助脚本、inf配置信息、sys驱动组件以及xml、dat等数据文件结构紧凑适合桌面环境下快速部署。卸载过程中工具会一并扫描相关配置文件、临时文件与日志文件并深入注册表查找清除关联项比系统自带卸载更彻底同时提供创建/移除桌面快捷方式的脚本方便日常调用。内置的Uninstall Tool v3.5.2可清晰列出已安装程序用户按需选中即可卸载界面简洁新手也能上手。目前已有985人学习下载适合希望快速完成软件清理、减少系统垃圾与注册表冗余的Windows用户可作为绿色轻量卸载方案的得力补充。1. 桌面卸载工具软件卸载残留比你想的常见大多数人卸软件的习惯路径都一样打开“程序和功能”找到目标点卸载看进度条走完就算收工。但真让一个桌面卸载工具复查一遍你会发现程序本体确实没了注册表残留、缓存目录、开机启动项、桌面快捷方式却往往原地不动。等到C盘悄悄变小、右键菜单多出几项陌生命令才想起来是当年卸载不干净埋的账。桌面卸载工具不改变“卸载由软件自带程序执行”这个事实它做的是把流程编排完整卸载前记录痕迹卸载后核对残留再把每一项摊开让你确认。这个轻量级工具适合三类人常装试用版做评测的、接手旧电脑的、坚持给C盘留余量的。2. 卸载工具的核心机制注册表、卸载编排与残留扫描要聊卸载工具先要放下一个直觉它并不是“自己动手拆软件”。除了强制卸载这种兜底手段真正的卸载动作依然由原软件自带的卸载程序执行。工具的角色更像一个导演它读系统中的卸载线索把原卸载程序叫出来在旁边记录它碰了哪些文件最后再核对善后。整条链路可以拆成三部分卸载入口、卸载编排、残留判定。2.1 卸载入口从哪来读取Uninstall注册表项“已安装程序列表”这个界面看起来是一张表实际并不是Windows集中维护的一份清单而是实时汇总注册表里Uninstall键下的内容。卸载工具启动后第一件事就是扫描下面这几组固定路径HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall对应大多数64位应用HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall对应32位应用在64位系统上的记录HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall对应按当前用户安装的程序每个键下的一组字段构成了工具主界面里那行软件条目的全部信息来源字段实际含义在卸载流程中的作用DisplayName软件在列表中显示的名称列表展示与排序Publisher发布者信息区分第三方软件与系统组件UninstallString调用卸载程序的完整命令行卸载动作的入口InstallLocation安装目录卸载后残留核对EstimatedSize估算占用空间C盘空间分析这里有一个容易误解的细节工具在扫描阶段对注册表是只读的并不改动任何键值。以前遇到过把卸载工具当成“注册表清理器”的误解实际上它更像是先画了一张“系统地图”至于地图上哪些路要修是下一步的事。如果工具显示的游戏软件列表和系统设置里不一致多数情况是权限或注册表重定向没读到另一组键位用管理员身份重新启动即可。2.2 卸载动作的编排逻辑引导、记录与善后拿到UninstallString之后工具并不是简单地执行一句命令行就完事。一次编排过的卸载流程常见做法是走这几步先做前置检查。目标软件如果当前正在运行先提示关闭进程或由工具结束进程。有些软件还有托盘驻留不结束就直接卸载会出现文件占用导致卸载不完整。再把卸载命令以匹配的参数交给系统。这里的参数决定了卸载过程是否换出界面后面实战会细讲。卸载程序执行过程中工具记录窗口状态、退出码、以及它实际变更过的目录和文件。卸载结束后对比卸载前生成的文件快照找出“卸载程序声明删除但没有删干净”的余留。我个人最看重第4步的快照对比这是卸载工具相比“右键软件-卸载”真正的差异点。快照对比的实现方式常见是在卸载前把目标目录、注册表项、快捷方式三个维度的状态记录下来卸载后再拉一份新状态做比对差异集合就是残留候选清单。有一点需要说明这里说的“记录”不是把所有文件的哈希都算一遍那样太费时也不符合轻量级工具的定位。合格的做法是记录路径是否还存在、键值是否还存在以及少数关键文件的最后写入时间。所以卸载工具扫描很快不是它偷懒而是它清楚自己只需要找“痕迹”不需要鉴别“内容”。2.3 残留判定注册表、目录、快捷方式与进程锁残留扫描的对象收敛到四个范围就够用注册表原软件在Uninstall键下创建的项、软件运行期间写入的当前用户Software子键目录安装目录、ProgramData下的数据目录、用户AppData下的缓存目录快捷方式桌面、开始菜单里指向已删除exe的“死快捷方式”启动项常见的是注册表Run键和启动文件夹若引用目标路径已不存在就判定为失效启动项扫描结果通常会按“危险等级”分组。低风险的是缓存目录和死快捷方式删了不会影响别的软件中风险的是软件自带的右键菜单注册项和文件关联删除后会改变当前关联影响范围可感知高风险的是共享DLL和公共运行库这类条目要看你选出来的目标软件是否独占不确认的建议保留。这也是为什么轻量卸载工具不会像“一键清理”那样自动全选——残留清理是要按条确认的。混合安装环境下某个目录可能是多个软件共用的缓存入口直接清掉会让其他软件静默出错。我一般遵循“目录归属至少能对上两个证据”再删一是卸载程序曾经引用过该路径二是该路径下的配置类文件内容明显属于目标软件。3. 上手实战从下载到完成一次干净卸载的完整流程下面把下载后的完整操作串一遍解压、首扫、单款卸载、批量卸载、残留确认。整个过程不需要改系统设置大部分功能绿色解压后就能用。3.1 解压与首次扫描先看清电脑里到底装了哪些软件下载下来的压缩包通常解压即用不需要走安装向导。解压位置我建议放到一个固定的工具目录比如D:\Tools\Uninstaller而不是随手放桌面。原因有三工具以后每次都要从这里启动卸载过程中工具目录本身不能被占用固定路径方便后续更新和排查。启动后的首个界面会经历一次全盘扫描。扫描的动作是读取前面说的几组注册表位置再叠加启动项和桌面快捷方式数据最终建立起初始软件清单。扫描结束后建议先做三件事左侧按“名称”排序浏览一遍清单心里有个数右侧按“发布者”排序单独看看系统组件条目有多少这部分不参与日常卸载记录当前C盘剩余空间卸载一轮后拿来做对照这里特别提醒列表不等于全量软件。绿色软件不会写入Uninstall键驱动程序和服务类组件不一定出现在这里一些按用户级安装的软件要登录当前账号才可见。所以这个工具有效范围是“第三方应用程序”系统层的清理不要指望它。提示首次扫描如果发现清单和“设置-应用”里显示的数量差很多通常是权限不够。关闭工具右键选择“以管理员身份运行”再进一次。3.2 单款软件的干净卸载一步步操作与参数选择单款卸载是使用频率最高的操作流程如下在清单里选中目标软件先看右侧“详情”面板确认UninstallString指向的路径存在点击“卸载”工具会询问使用交互模式还是静默模式交互模式适合拿不准参数的软件弹出的是原软件自己的卸载向导照常点击确认即可卸载结束后工具自动进入残留扫描把残留条目列出来逐条勾选后清理回到主界面确认目标软件已经从清单中消失静默模式的设计初衷是省掉点击弹窗的过程但参数是否能生效取决于原软件是用什么安装器打包的。下面这张参数表值得收藏安装器类型常见静默参数说明Windows Installer.msi/qnMsiExec.exe /X{GUID} /qn完全静默NSIS/S跳过安装确认与进度界面Inno Setup/VERYSILENT /SUPPRESSMSGBOXES配合/NORESTART可避免重启弹窗InstallShield/S /f1应答文件部分版本需要应答文件路径参数不能乱套。看到某篇教程说“所有软件加/S就能静默”实际会有两种情况翻车一是UninstallString本身拼接的是安装器的启动器参数要接在启动器之后而不是卸载程序之后二是新版安装器对静默做了限制参数无效时会直接弹出交互界面。我的做法是第一次用静默超时60秒没退出就改交互模式重跑。3.3 批量卸载与绿色软件残留清理的边界批量卸载适合处理“一个时段内集中安装的一批试用软件”或“同一产品线下的多个模块”。批量操作前务必用发布者过滤把系统组件条目排除掉否则很容易误触运行库。批量卸载的常见流程多选目标软件右键选择“批量卸载”工具逐个检查是否在运行状态有运行的就先结束进程每款软件之间保留几秒间隔避免两个卸载程序同时抢注册表全部完成后统一进入残留清单页按软件名分组核对失败处理上有个小技巧批量卸载完成后先看日志面板里每条卸载的退出码再决定哪些需要单独处理。退出码为0通常代表卸载进程正常结束非0则要单独重跑。不要看到“完成”字样就认为全绿了——有的软件卸载程序会吞掉异常状态需要靠残留扫描兜底。绿色软件免安装版不在卸载列表里但它的痕迹会分散到注册表右键菜单、文件关联、OpenWith列表里。处理方式是用工具的“文件夹残留扫描”功能指定目标绿色软件的存放目录扫出来后逐条清理。绿色软件没有文件锁直接整目录删除不会报错但关联项只能靠工具列出手动翻注册表定位会非常累。4. 卸载翻车现场五个高频问题与排查步骤无论工具做得再怎么周全卸载这种操作本质上还是“黑匣子”——原软件卸载程序的内部逻辑你只能从结果反推。下面是五个翻车频率最高的场景每条都按现象、原因、解决三个步骤拆开讲。4.1 卸载完了桌面图标还在现象软件卸载成功后桌面上那个图标还挂着双击提示“目标文件不存在”开始菜单里也残留同名目录。原因桌面快捷方式不在安装目录里卸载程序通常没有权限也不负责清理用户桌面的快捷方式。卸载工具扫描桌面时会识别“失效快捷方式”但如果工具没有把桌面纳入扫描范围或者快捷方式同时存在于公共桌面与用户桌面两处就会遗漏。解决先用路径判断是哪处的快捷方式——公共桌面在ProgramData\Microsoft\Windows\Start Menu\Programs用户桌面在AppData路径下。确定目标exe已不存在后手动删除或等工具进入残留页再次扫描通常第二遍就能识别为死快捷方式。4.2 提示“卸载成功”但安装目录还在现象卸载向导正常走完提示已成功但原安装目录还占着几百MB空间文件夹能打开但里面只剩空壳或少量配置文件。原因卸载程序只删掉了自己管理的清单内文件对运行期间动态生成的日志、下载缓存、用户配置并不负责。另一个常见关联是目标软件的某个服务还在运行文件被占用后卸载程序选择跳过删除。解决先打开任务管理器结束所有与目标软件相关的进程和服务再到卸载工具残留页勾选对应目录用叠加的“重启后删除”选项处理。如果目录里有用户配置文件比如截图工具的自定义素材先备份再删。4.3 误卸载了系统运行库现象清理一批软件后发现其他几个日常程序打开报错提示缺少运行库组件或者干脆闪退。原因批量卸载时没有按发布者过滤把C运行库、DirectX组件这类“看似没用但被大量软件依赖”的运行库当作普通软件卸载了。解决最稳妥的办法是去运行库的官方发布渠道重新安装对应版本Windows更新也能补全一部分缺漏。但更值得记住的是教训任何卸载操作前先按发布者排序系统组件条目默认不勾选除非明确知道它在卸载后不会有连带影响。这里不相信“感觉”只相信依赖关系。4.4 静默参数没生效卸载中途卡住现象选择了静默卸载工具显示“正在卸载”进度条长时间不动任务管理器里能看到卸载进程但窗口一直没有出现。原因参数与实际安装器类型不匹配。比如用NSIS的/S去卸一个Inno Setup打包的程序Inno会忽略这个参数并弹出交互界面界面被静默模式的窗口策略隐藏于是看起来像卡死。解决让工具终止当前卸载进程切到交互模式重跑一遍让原安装向导正常弹出手动操作。同时去详情面板看一眼UninstallString的真实尾部以MsiExec开头的是MSI类型直接看产品名里的卸载程序路径判断安装器风格。4.5 卸载后开机启动项反而多了一条现象卸载完某主力软件后打开任务管理器启动页发现一条没见过的启动命令指向的路径还是刚才卸载的目录。原因部分软件的“守护进程”机制主程序卸载时把启动项交给一个常驻服务主程序没了之后服务每次开机都尝试拉起重装或修复流程这就是“越卸越多”的观感来源。另一种原因是卸载工具把主程序启动项删了但软件附加服务的启动项仍残留。解决先在启动项管理里禁用这条失效启动项再检查服务列表里对应名称的服务设置为禁用。回到原目录确认目录已删空之后手动打开启动项注册表路径逐条排查。记住顺序先清服务再清启动项最后删目录否则目录删完服务还在尝试写回。5. 进阶用法把卸载工具变成月度清理的固定环节把这个工具下载回来后我建议先从单款卸载跑起跑顺了再做批量别一上来就全选。等操作手感稳定之后可以做两件更进阶的事。5.1 命令行配合卸载前后留一份注册表备份正式卸载之前本地导出当前Uninstall键的备份是保留后悔药成本最低的手段。:: 导出系统级软件卸载注册表项/y 表示存在同名文件时直接覆盖 reg export HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall D:\Backup\uninstall_backup_202501.reg /y :: 导出当前用户级软件卸载注册表项 reg export HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall D:\Backup\uninstall_backup_user_202501.reg /y两行分别针对系统级与用户级两个Uninstall键/y保证第二次导出时不会弹确认。这个备份不是用来“恢复被删的软件”它记录的是卸载前的键值状态如果误删某条注册表项可以在regedit里对照缺失项手动补回。实际恢复时我一般不会双击导入整个reg而是先搜目标键名再按需恢复避免覆盖其他正常条目。备份文件按月份命名每月覆盖一次就行不用长期堆叠。5.2 月度清理节奏清单、发布者、死快捷方式固定的清理流程比临时起意有效得多。我现在每个月初走一遍固定套路先在卸载工具里把扫描结果按“最近安装”排序挑出上个月装过的所有试用版按发布者过滤把系统组件排除掉然后逐条执行卸载最后进残留页把死快捷方式一键清除再对照C盘剩余空间记录一次。整套下来十分钟左右。这个习惯解决的最大问题不是某个软件卸载不干净而是“电脑变慢”的玄学。以前总觉得系统卡是硬件问题后来发现多数时候是堆积的试用版和半残服务在空转。从那以后我每次下载试用版之前都会先在卸载工具里记一笔软件清单试用完立刻走一遍清理流程不再攒到“改天有空再说”。这个习惯换了三台电脑也没丢希望帮到你。本文还有配套的精品资源点击获取

相关新闻

KnowSeam:为智能体打造企业知识中间件,破解知识孤岛

KnowSeam:为智能体打造企业知识中间件,破解知识孤岛

1. 企业知识为何需要“智能体友好”的底座 企业里最尴尬的一件事,莫过于知识明明就在那里,却没人能用好。文档躺在网盘里,FAQ 散落在工单系统,老员工脑子里的经验随着离职一起消失,新来的同事问一个基础问题要等半天才…

2026/10/13 15:36:30 阅读更多 →
Python量化交易入门:环境搭建、双均线策略与回测风控

Python量化交易入门:环境搭建、双均线策略与回测风控

我做量化这些年,最大的感触是:很多人以为量化交易就是“写个策略然后躺着赚钱”,但真正跑通完整流程之后才发现,它更像一套“把想法变成规则、把规则变成代码、把代码放进历史数据里反复拷问”的工程方法。这篇文章就是写给刚开始…

2026/10/13 15:36:30 阅读更多 →
Vue智慧水务系统源码拆解:可视化大屏与实时监测实践

Vue智慧水务系统源码拆解:可视化大屏与实时监测实践

简介:这是一份基于 Vue.js 开发的开源智慧水务系统前端工程,面向水务行业信息化开发者、前端工程师及正在学习 Vue 实战项目的读者。项目围绕水务监测、数据展示与后台管理场景,提供了完整可运行的页面组件与构建配置,适合直接部署…

2026/10/13 15:35:26 阅读更多 →

最新新闻

交互式 ER 图 + Schema 差异对比 + 迁移SQL生成:LibreDB Studio 数据库设计工作流完整实操

交互式 ER 图 + Schema 差异对比 + 迁移SQL生成:LibreDB Studio 数据库设计工作流完整实操

【免费下载链接】libredb-studio One browser tab for PostgreSQL, MySQL, Oracle, SQL Server, MongoDB, Redis, SQLite, Couchbase, ClickHouse, Druid, DuckDB, Turso and more. An open-source SQL IDE with SSO, audit trail and AI-assisted queries MIT licensed, with …

2026/10/13 16:18:31 阅读更多 →
EdgeClaw ClawXTool 八合一工具套件盘点:13 个工具覆盖安全审计与开发工作流

EdgeClaw ClawXTool 八合一工具套件盘点:13 个工具覆盖安全审计与开发工作流

人工智能AI Agent大模型Agent 记忆LLM 网关 【免费下载链接】EdgeClaw EdgeClaw: Edge-Cloud Collaborative Personal AI Assistant based on OpenClaw 项目地址: https://gitcode.com/gh_mirrors/ed/EdgeClaw 点击查看 免费下载 EdgeClaw ClawXTool 是 EdgeClaw&a…

2026/10/13 16:18:31 阅读更多 →
Pollinations 社区模型每日排行榜:从 Tinybird 统计、像素风渲染到 Discord 自动发布的完整流水线

Pollinations 社区模型每日排行榜:从 Tinybird 统计、像素风渲染到 Discord 自动发布的完整流水线

AI 应用媒体生成后端前端 【免费下载链接】pollinations Your Friendly Open-Source Gen-AI Platform 项目地址: https://gitcode.com/gh_mirrors/po/pollinations 点击查看 免费下载 本文围绕 pollinations 仓库中社区模型排行榜(community model lead…

2026/10/13 16:18:31 阅读更多 →
Farm 持久化缓存(Persistent Cache)完全指南:增量构建原理与配置实战

Farm 持久化缓存(Persistent Cache)完全指南:增量构建原理与配置实战

前端构建构建工具开发工具 【免费下载链接】farm Extremely fast Vite-compatible web build tool written in Rust 项目地址: https://gitcode.com/gh_mirrors/fa/farm 点击查看 免费下载 Farm 从 v0.14.0 起支持将编译结果持久化到磁盘,通过 compilat…

2026/10/13 16:18:31 阅读更多 →
MATLAB虹膜识别实战:从定位到匹配的完整链路与避坑指南

MATLAB虹膜识别实战:从定位到匹配的完整链路与避坑指南

简介:这份资源聚焦虹膜识别中的特征提取环节,面向正在学习生物特征识别、图像处理或准备相关课程设计的学生与开发者,帮助理解如何用2D-Gabor滤波器从归一化虹膜图像中提取二进制特征编码。压缩包共10个文件,约939KB,包…

2026/10/13 16:18:31 阅读更多 →
MySQL 4.0 实战指南:老版本环境搭建、避坑与迁移要点

MySQL 4.0 实战指南:老版本环境搭建、避坑与迁移要点

简介:《MySQL 4.0.pdf》是一份聚焦MySQL 4.0版本的开源关系型数据库参考资料,适合数据库管理员、后端开发人员及系统学习数据库原理的读者,用于理解经典版本的功能体系与运维思路。资源为单个PDF文件,压缩包仅334KB,内…

2026/10/13 16:17:31 阅读更多 →

日新闻

物联网系统集成避坑指南:从选型到验收的关键要点

物联网系统集成避坑指南:从选型到验收的关键要点

做了这么多年物联网系统集成的项目,我最大的感受是,大部分坑不是出在技术前沿,而是出在一些看起来很平常的地方。设备选了便宜的、协议没问清楚、现场没摸透、验收标准写得含糊——这些细枝末节,最后都会变成延期、超支和扯皮的大…

2026/10/13 0:00:57 阅读更多 →
ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

如果你玩ESP32有一阵子了,很难不碰到舵机控制这道坎。做智能小车要转方向,做机械臂要抬关节,做云台要偏航俯仰,背后都是同一个东西在干活:舵机。而我见过太多人卡在“代码能编译、舵机就是不听话”这个阶段&#xff0c…

2026/10/13 0:00:57 阅读更多 →
CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

1. 为什么CAN总线至今仍是工业现场的“硬通货”?——从汽车底盘到智能温室的真实需求你有没有拆过一辆老款燃油车的中控台?或者调试过某高校实验室里那台跑着Modbus协议却频频丢帧的PLC控制柜?又或者,在某个农业物联网项目里&…

2026/10/13 0:00:57 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/13 2:54:56 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/12 0:16:38 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 21:05:09 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →