机械硬盘坏道检测实战:Windows下MHDD使用与坏道修复指南
1. 为什么一块“还能用”的机械盘值得你花时间做坏道检测很多人对机械硬盘的态度是“能读能写就别折腾”直到某天拷贝重要资料时进度条卡死、系统疯狂掉盘、文件夹变成 0 字节才追悔莫及。机械硬盘和固态硬盘的失效逻辑完全不同固态往往是主控突然锁死或闪存颗粒寿命耗尽说没就没而机械盘绝大多数故障是渐进式的——盘片上的磁介质局部退化、磁头读写能力下降、伺服信息偏移这些都会先表现为零星坏道再慢慢扩散成成片坏道。也就是说机械盘给了你一个相当长的“预警窗口期”问题在于大多数人没有工具去读这个预警。MHDD 就是专门用来读这个预警的经典工具。它工作在非常底层的层面绕过操作系统直接对硬盘的扇区做读写和校验能给出比任何 Windows 图形化软件都更真实的盘面健康画像。这篇内容面向的是手里有机械盘、想搞清楚它到底还能不能放心用的人——不管你是想给老笔记本换下来的盘做体检还是想判断一块二手盘值不值得留或者只是单纯想学一门硬盘底层检测的手艺。我会把 MHDD 在 Windows 环境下的完整使用链路讲透包括为什么这么操作、每一步背后的原理、实测中容易翻车的地方以及拿到扫描结果之后到底该怎么解读、怎么处理。需要先明确一点MHDD 本身是一个 DOS 程序它没有 Windows 原生版本。所谓“Windows 下使用 MHDD”本质是借助 Windows 机器制作一个可引导的 DOS 环境然后在这个环境里运行 MHDD。这个认知非常关键后面所有的操作细节都建立在这个前提上。理解了这一点你就不会去满世界找“MHDD Windows 版安装包”这种根本不存在的东西。2. 把 MHDD 跑起来引导环境的搭建逻辑与实操2.1 为什么必须走 DOS 引导这条路先解释清楚这个“为什么”否则后面每一步你都会觉得别扭。MHDD 要直接访问硬盘的物理扇区需要拿到对 ATA 通道的完全控制权。Windows 作为多任务操作系统它的存储栈里叠了文件系统驱动、卷管理器、过滤驱动等一大堆东西任何用户态程序想直接发 ATA 命令都会被层层拦截。而 DOS 是单任务的实模式系统程序可以直接调用 BIOS 中断和端口 I/O对硬盘发 IDENTIFY、READ SECTOR、WRITE SECTOR 这类底层命令毫无阻碍。这就是 MHDD 检测结果比 Windows 软件更可信的根本原因——它看到的是盘面本身而不是经过操作系统“美化”过的逻辑视图。所以搭建流程就清晰了准备一个能引导进 DOS 的介质把 MHDD 的可执行文件放进去从这块介质启动电脑在纯 DOS 环境下运行 MHDD。整个链路里 Windows 只承担一个角色——制作引导盘的工具机。2.2 引导介质的三种选择与取舍制作 DOS 引导盘常见有三条路我按推荐程度排一下。第一种是U 盘 引导镜像写入工具。这是目前最省事的方式。你需要一个容量 1GB 以上的 U 盘会被格式化提前备份数据然后用镜像写入工具把一个包含 DOS 和 MHDD 的镜像文件写到 U 盘上。写入完成后 U 盘就是一个可引导的 DOS 盘。这种方式的优点是成功率高、不依赖光驱缺点是会清空 U 盘。第二种是光盘刻录。如果你手头有刻录机和空白 CD把引导镜像刻成光盘也能用。优点是光盘只读、不会被误写缺点是现在很多机器没有光驱而且刻录本身有失败率。第三种是在已有 DOS 环境里手动放置 MHDD。如果你已经有一个能进 DOS 的 U 盘直接把 MHDD 的文件夹拷进去即可不用重新做引导。这种方式适合已经折腾过一次的人。提示不管你用哪种方式制作引导盘之前一定要确认目标机器的启动模式。老机器基本是 Legacy BIOS直接认 U 盘引导新机器可能是 UEFI需要在 BIOS 里把启动模式改成 Legacy/CSM或者关闭 Secure Boot否则 U 盘根本不会出现在启动项里。这是新手最常卡住的第一步。2.3 进入 DOS 后运行 MHDD 的关键动作从 U 盘启动成功后你会看到一个黑底白字的 DOS 命令行界面。这时候先别急着敲 mhdd有几个前置动作要做。先确认当前盘符。DOS 下 U 盘可能是 A:、C: 或其他字母用dir命令看一下当前目录里有没有 MHDD 的文件夹。找到之后cd进去直接输入mhdd回车。如果程序正常启动你会看到一个蓝底的主界面顶部是版本信息中间是硬盘列表区域。MHDD 启动后第一件事是选择要检测的硬盘。它会列出当前机器上所有能被 BIOS 识别的 ATA 设备每个设备前面有一个编号。你要根据容量和型号确认哪一块是目标盘然后输入对应编号回车。这里有个坑如果你要检测的盘同时也是启动盘MHDD 可能会提示无法独占访问所以强烈建议把待检测盘作为从盘挂载用另一块盘或 U 盘引导系统。选好盘之后按F2可以让 MHDD 读取并显示这块盘的详细信息包括型号、固件版本、序列号、LBA 总扇区数、支持的传输模式等。这一步很重要一是确认你选对了盘二是记下 LBA 总数后面扫描和修复都要用到这个数值。3. 扫描命令怎么选从表面扫描到精准定位坏道3.1 先搞懂 MHDD 的扫描命令体系MHDD 的扫描命令有好几个新手最容易懵的就是不知道该按哪个。我把最常用的几个列出来并说清楚它们各自解决什么问题。命令全称含义作用适用场景SCAN表面扫描按 LBA 顺序读取每个扇区记录响应时间全面体检判断盘面健康度SCAN with WRITE带写入的扫描读取后回写可触发重映射修复逻辑坏道AAM自动噪声管理调整磁头寻道速度降噪或提升稳定性ERASE擦除按扇区擦除数据彻底清盘或修复弱扇区SMART读取 SMART 信息查看硬盘自监测数据快速判断盘的整体状态日常检测SCAN 是主力命令。它的工作方式是从起始 LBA 到结束 LBA逐个扇区发读命令记录每个扇区的响应时间并按响应时间给扇区分类着色。响应越快说明扇区越健康响应越慢说明磁介质或磁头在该位置读取吃力读不出来就是坏道。3.2 SCAN 命令的参数配置与含义在 MHDD 主界面按F4会弹出 SCAN 的参数设置窗口。这里的每一项都直接影响扫描结果必须逐项理解。Start LBA 和 End LBA扫描的起止扇区。默认是从 0 到硬盘最大 LBA。如果你想分段扫描比如先扫前 10% 看看情况可以手动改。分段扫描的好处是遇到大量坏道时不会卡在一个地方太久。Remap是否开启重映射。开启后MHDD 在遇到坏道时会尝试把该扇区的数据重映射到硬盘预留的备用扇区。这个功能要谨慎用原因后面单独讲。Timeout单个扇区的超时时间单位是秒。默认值通常够用。如果盘老化严重可以适当调大避免因为响应慢被误判为坏道。Advanced Log高级日志开启后会记录更详细的扫描信息方便事后分析。Loop the test/Repair循环测试或修复。一般检测时不开修复时可能用到。配置好参数后按F4或回车开始扫描。扫描过程中界面会实时显示进度、已扫描扇区数、各响应时间区间的扇区数量统计。3.3 扫描结果的颜色分级到底在说什么MHDD 扫描时用不同颜色标记扇区这套颜色体系是解读盘面健康的核心。我按从健康到危险的顺序说明。灰色/白色块响应时间极短通常在 3ms 以内属于健康扇区。大量这种块说明盘面状态良好。浅灰色到绿色块响应时间在 3ms 到 50ms 之间属于正常波动范围。机械盘有寻道和旋转延迟这个区间完全可接受。橙色块响应时间 50ms 到 150ms说明该位置读取开始吃力。零星橙色块可以接受但如果橙色块成片出现说明这片区域的磁介质已经开始退化。红色块响应时间超过 150ms 或需要多次重试才能读出。这是弱扇区的典型表现数据还在但读取已经很不稳定。问号 ?完全读不出来的扇区也就是通常说的坏道。数据大概率已经丢失。叉号 X读取时发生 UNC不可纠正错误或 ABRT命令中止属于严重坏道。感叹号 !校验错误读出来的数据和预期不符。注意扫描结果里如果出现大量红色块和问号且集中在某个 LBA 区间基本可以判定这块盘进入了衰退期。如果坏道是零散分布的情况相对好一些但也要持续观察。4. 坏道修复的边界哪些能修哪些修了也白修4.1 逻辑坏道与物理坏道的本质区别这是整篇内容里最需要建立正确认知的地方。很多人以为坏道都能“修复”实际上坏道分两类处理方式天差地别。逻辑坏道扇区的磁介质本身没坏但记录的数据校验信息出错或者扇区被错误标记。这种坏道通过重写扇区内容往往能恢复正常。MHDD 的 ERASE 命令、带写入的 SCAN以及 Windows 下的低格工具处理的就是这类坏道。物理坏道盘片上的磁介质真的发生了物理损伤比如磁粉脱落、划伤、氧化。这种损伤是不可逆的任何软件都修不好。软件能做的只有两件事一是把坏扇区标记出来让系统不再使用二是把数据重映射到备用扇区。判断方法用 MHDD 的 ERASE 命令对坏道区域擦除一次然后再 SCAN 一遍。如果原来红色的扇区变回正常颜色说明是逻辑坏道已经修复如果擦除后依然是红色或问号那就是物理坏道别抱幻想。4.2 Remap 重映射用备用扇区换健康机械硬盘出厂时都会预留一部分备用扇区通常在几千到几万个不等。当 MHDD 开启 Remap 后扫描到坏道它会尝试把坏扇区的逻辑地址指向一个备用扇区这样操作系统访问这个地址时实际读写的是好的备用扇区坏道就被“藏”起来了。听起来很美好但 Remap 有两个必须知道的代价。第一备用扇区是有限的用一点少一点如果坏道持续增加备用扇区耗尽后盘就彻底没救了。第二Remap 操作会修改硬盘的 G-list增长缺陷表这个表存在硬盘的固件区频繁写入有风险操作不当可能导致硬盘直接不认盘。我的建议是只有在坏道数量很少个位数到几十个且盘上数据已经备份的情况下才考虑用 Remap。如果坏道成片出现Remap 只是延缓死亡不如直接换盘。4.3 ERASE 擦除修复的正确姿势ERASE 是 MHDD 里修复逻辑坏道最直接的手段。它的原理是对指定 LBA 范围逐扇区写入特定模式的数据强制刷新磁介质状态同时重建扇区的校验信息。操作时按F4进入参数设置把模式选成 ERASE然后设定起止 LBA。关键点起止 LBA 一定要精确框定在坏道区域不要图省事全盘擦除。全盘擦除一块 1TB 的盘可能要几个小时而且会清空所有数据。框定范围后擦除通常几分钟就能完成。擦除完成后重新用 SCAN 扫一遍刚才的区域。如果颜色恢复正常说明逻辑坏道修复成功如果还是红色说明是物理坏道这时候可以考虑对这几个扇区单独做 Remap。提示ERASE 会彻底清除数据操作前务必确认目标区域没有需要保留的文件。如果盘上还有重要数据先做镜像备份再动手。5. 实测中最容易翻车的几个环节5.1 选错盘导致误操作MHDD 的界面是纯文本的硬盘列表只显示编号、容量和型号。如果你机器上挂了两块容量相近的盘很容易选错。一旦选错盘做 ERASE数据就没了。我的习惯是操作前先用F2看详细信息核对序列号后几位确认无误再动手。序列号是唯一标识容量和型号都可能重复。5.2 扫描中途断电或重启MHDD 扫描一块大容量机械盘可能要几个小时。如果中途断电扫描进度全部丢失而且如果当时正在做 Remap 或 ERASE可能留下半完成的状态导致硬盘出现异常。所以扫描前确保电源稳定笔记本要插电台式机最好接个 UPS。如果盘容量很大建议分段扫描每段扫完记录结果避免一次性扫太久。5.3 把正常的老化误判为坏道机械盘用久了整体响应时间会变长扫描时橙色块增多是正常现象。不要看到橙色就慌关键看红色和问号的数量。一块用了五六年的盘扫描出来有几十个橙色块、几个红色块只要没有成片坏道日常存点不重要的数据还是能用的。判断标准是坏道的分布形态零散分布可观察成片集中要警惕持续增加就换盘。5.4 忽视 SMART 数据的交叉验证MHDD 的 SCAN 是盘面扫描SMART 是硬盘自己记录的健康指标两者要结合看。在 MHDD 主界面按F8或输入 SMART 命令可以读取。重点看几个属性05 重映射扇区计数、C5 当前待映射扇区计数、C6 无法校正的扇区计数。如果 05 和 C5 的原始值在持续增长说明坏道在扩散即使当前扫描结果还行这块盘也不适合存重要数据了。6. 拿到扫描结果之后一份可执行的处置决策6.1 按坏道严重程度分档处理扫描完成后根据结果可以分几种情况处理。全盘无红色无问号橙色零星盘况良好正常使用建议每半年扫一次做趋势对比。少量红色块无问号分布零散存在弱扇区。先备份重要数据然后对红色区域做 ERASE再复扫。修复后可以继续用但降级为次要存储。出现问号或叉号数量在几十个以内已有确定坏道。备份数据后尝试 ERASE Remap修复后仅用于存放可丢失的数据比如临时下载盘。坏道成片出现或问号数量上百盘进入快速衰退期。不要再尝试修复直接更换。继续使用随时可能彻底掉盘数据风险极高。扫描过程中卡死、掉盘、异响磁头或电机可能已经故障。立即停止通电这种盘每多通电一次数据恢复的成功率就低一分。6.2 修复后的验证流程任何修复操作之后都必须做验证否则你不知道是真修好了还是暂时掩盖了。验证流程是ERASE 或 Remap 完成后重新 SCAN 整个修复区域确认颜色恢复正常然后读取该区域的数据如果之前有备份确认能正常读出最后观察一周再扫一次看坏道有没有在原位置或附近重新出现。如果重新出现说明物理损伤在扩散修复只是暂时的。6.3 什么情况下该放弃修复直接换盘说句实在话机械盘的价格现在很低1TB 的新盘也就百来块。如果一块盘已经出现成片坏道花几个小时去修复修完还是个随时可能挂的盘时间成本远高于换盘成本。我的经验判断是坏道数量超过 100 个或者 SMART 的 05 属性原始值超过 1000就直接换盘。修复只适用于坏道极少、盘还有抢救价值的情况。数据无价别为了省一块盘的钱去赌。7. 关于 MHDD 使用的一点个人体会MHDD 这个工具界面简陋、操作全靠键盘、文档也不友好但它给出的盘面信息是很多图形化软件给不了的。我用了这些年最大的体会是它最大的价值不是修复而是诊断。修复坏道这件事成功率其实有限物理坏道修不好逻辑坏道修好了也可能复发。但通过 MHDD 的扫描结果你能清楚地知道一块盘处于什么状态从而做出“继续用、降级用、还是换掉”的决策。这个决策价值远比修复本身重要。另外提醒一句MHDD 对较新的硬盘支持有限。一些大容量新盘或者使用新接口协议的盘MHDD 可能识别不全甚至无法操作。遇到这种情况可以换用厂商自家的诊断工具或者更新版本的底层检测软件。工具是死的判断是活的理解原理比记住命令更重要。

相关新闻

弹性网络回归实战:在Lasso与Ridge之间找到最优解

弹性网络回归实战:在Lasso与Ridge之间找到最优解

简介:这是一份弹性网络回归(Elastic Net Regression)的Python实现资源,面向机器学习的初学者和需要处理高维、多重共线性数据的学习者。压缩包内含2个文件,分别为1个Python脚本和1个说明文档,整体大小仅51K…

2026/10/10 6:56:08 阅读更多 →
SpringBoot高校绿色循环易物平台——校园闲置物品以物换物全栈实践

SpringBoot高校绿色循环易物平台——校园闲置物品以物换物全栈实践

毕业设计选题季节,我收到过不少私信,内容几乎一样:“学长,XX管理系统能不能做?”十个选题里能撞出八个管理系统。今天要聊的这套平台,名字很长,但核心就一件事——基于SpringBoot的高校绿色循环…

2026/10/10 6:56:08 阅读更多 →
SpringBoot+Vue+微信小程序校园外卖系统全栈实战解析

SpringBoot+Vue+微信小程序校园外卖系统全栈实战解析

小程序校园外卖这套项目,乍一听像是个毕业设计级别的练手项目,但真正上手做了之后你会发现,它就是把外卖业务的“订单 库存 支付 配送”几条核心链路完整落地的一套业务系统。用 SpringBoot 做后端接口,Vue 做管理后台&#xf…

2026/10/10 6:56:08 阅读更多 →

最新新闻

Apache Zeppelin 显示系统完全指南:%text、%html、%markdown、%table 与 %network 深度解析

Apache Zeppelin 显示系统完全指南:%text、%html、%markdown、%table 与 %network 深度解析

数据分析数据可视化大数据后端 【免费下载链接】zeppelin Web-based notebook that enables data-driven, interactive data analytics and collaborative documents with SQL, Scala and more. 项目地址: https://gitcode.com/gh_mirrors/zeppelin1/zeppelin 点击查…

2026/10/10 9:02:42 阅读更多 →
kubernetes.aio.client.models.v1_tcp_socket_action:Kubernetes Python 异步客户端中 V1TCPSocketAction 模型深度解析

kubernetes.aio.client.models.v1_tcp_socket_action:Kubernetes Python 异步客户端中 V1TCPSocketAction 模型深度解析

后端云原生容器编排 【免费下载链接】python Official Python client library for kubernetes 项目地址: https://gitcode.com/gh_mirrors/python1/python 点击查看 免费下载 本篇聚焦 Kubernetes 官方 Python 客户端(kubernetes-python)异步…

2026/10/10 9:02:42 阅读更多 →
深度学习中的过拟合与正则化实战指南:基于 PyTorch 的 NYU DLSP20 课程笔记

深度学习中的过拟合与正则化实战指南:基于 PyTorch 的 NYU DLSP20 课程笔记

示例工程 【免费下载链接】NYU-DLSP20 NYU Deep Learning Spring 2020 项目地址: https://gitcode.com/gh_mirrors/pyt/pytorch-Deep-Learning 点击查看 免费下载 本篇文章围绕 NYU Deep Learning Spring 2020 课程第 14 周第 3 讲(docs/ja/week14/14-3…

2026/10/10 9:02:42 阅读更多 →
RFC 36 与 GDAL 显式驱动选择机制的演进:从 `driver=` 前缀到 `GDALOpenEx` 驱动白名单

RFC 36 与 GDAL 显式驱动选择机制的演进:从 `driver=` 前缀到 `GDALOpenEx` 驱动白名单

GIS遥感数据工程 【免费下载链接】gdal GDAL is an open source MIT licensed translator library for raster and vector geospatial data formats. 项目地址: https://gitcode.com/gh_mirrors/gd/gdal 点击查看 免费下载 RFC 36 是 GDAL 发展史上一个极具代表性的…

2026/10/10 9:02:42 阅读更多 →
彻底搞懂C++ unordered_map与unordered_set:用法、原理与性能调优

彻底搞懂C++ unordered_map与unordered_set:用法、原理与性能调优

我前阵子在重构一个本地缓存模块,数据规模从几万涨到几百万条,原来用map存用户ID到会话对象的映射,结果查找耗时肉眼可见地涨。换成unordered_map之后,同样的查询操作快了接近一个数量级。这个改动让我重新认真过了一遍 C 标准库里…

2026/10/10 9:02:42 阅读更多 →
Material Maker 3D 纹理节点完全指南:从 Apply 应用到 Select 选择的程序化三维纹理管线

Material Maker 3D 纹理节点完全指南:从 Apply 应用到 Select 选择的程序化三维纹理管线

桌面应用图形学3D渲染图像处理 【免费下载链接】material-maker A procedural textures authoring and 3D model painting tool based on the Godot game engine 项目地址: https://gitcode.com/gh_mirrors/ma/material-maker 点击查看 免费下载 3D 纹理&#xff0…

2026/10/10 9:01:40 阅读更多 →

日新闻

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

1. 从“卫星轨道分类”这个标题说起:为什么值得花时间搞懂第一次接触“卫星轨道分类”这个概念,很多人会觉得它离自己很远——不就是天上的星星怎么转吗?但如果你正在做航天任务规划、遥感数据接收、星座设计,甚至只是准备一场航天…

2026/10/10 0:00:39 阅读更多 →
Spring AOP 核心原理与实战:从概念到日志切面落地

Spring AOP 核心原理与实战:从概念到日志切面落地

1. 从一个真实痛点说起:为什么你的代码里到处都是重复逻辑刚入行那会儿,我写过一个用户管理模块,注册、登录、改密码、注销四个接口。每个接口里都塞了几乎一样的日志打印、参数校验、事务开启和提交。当时觉得没什么,能跑就行。直…

2026/10/10 0:00:40 阅读更多 →
Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

简介:这是一套面向计算机相关专业学生与项目实战学习者的Python数据采集与分析可视化完整项目,以Boss直聘岗位数据为对象,适合用作毕业设计、课程设计或期末大作业。资源包共38个文件,约246KB,以13个py源码文件为核心&…

2026/10/10 0:00:40 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

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

2026/10/8 15:26:32 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

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

2026/10/10 1:36:08 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

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

2026/10/9 10:11:06 阅读更多 →

月新闻

我发现了一个新思路:用 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/10 5:23:50 阅读更多 →
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/9 21:32:20 阅读更多 →
黑夜航拍船只数据集训练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/9 6:17:20 阅读更多 →