相位检测自动对焦(PDAF)原理详解:从核心机制到手机与相机实战应用
1. 从“拉风箱”到“快准狠”为什么相位对焦改变了摄影如果你用过十年前的数码相机或者早期的智能手机拍照一定对那个“拉风箱”的过程记忆犹新——半按快门后镜头会前后伸缩几次伴随着“滋滋”的马达声画面从模糊到清晰再到模糊最后才勉强对上焦。这个过程不仅慢在光线稍暗或者拍摄运动物体时还经常失败拍出一片模糊。而今天无论是拿起手机随手一拍还是用微单相机抓拍奔跑的孩子对焦几乎都是瞬间完成干脆利落。这背后最大的功臣之一就是相位检测自动对焦。PDAF全称Phase Detection Auto Focus即相位检测自动对焦。它不是一个新概念早在胶片单反时代就已成熟应用。但真正让它走进千家万户、成为现代影像设备标配的是其在智能手机和消费级无反相机上的大规模普及。简单来说PDAF的核心价值在于快、准、稳。它通过一套精巧的光学设计和传感器布局让相机能像人眼判断距离一样直接“感知”到焦点是偏前还是偏后从而一次性计算出需要移动镜头的精确方向和距离避免了传统对比度对焦那种需要反复试探的笨拙过程。这篇文章我想从一个影像开发者和深度用户的角度抛开那些晦涩的专利文档和营销话术和你深入聊聊PDAF到底是怎么工作的它如何在手机和相机上以不同的形态实现我们在实际使用中会遇到哪些“坑”以及面对琳琅满目的对焦技术我们该如何理解它们的优劣。无论你是摄影爱好者想更了解手中的设备还是开发者或产品经理需要理解这项技术的底层逻辑相信这些从一线实践中总结的细节都能给你带来实实在在的启发。2. 相位对焦的核心原理像人眼一样“判断”距离要理解PDAF为什么快我们得先看看它之前的主流方案——对比度对焦Contrast Detection AF为什么慢。对比度对焦的原理很直观相机通过图像传感器分析画面中边缘的对比度即明暗反差。当焦点完全准确时边缘最清晰对比度最高焦点不实时画面发虚对比度下降。因此对焦马达会驱动镜头前后移动相机不断采样计算对比度值直到找到那个对比度最高的点。这个过程就像你在黑暗中摸黑调整望远镜焦距只能凭感觉前后拧直到画面最清楚为止必然需要多次尝试效率低下尤其在低对比度场景下容易“拉风箱”。而相位对焦则像给相机装上了一双可以判断距离的“眼睛”。它的核心思想源于相位检测测距仪其光学基础是双像重合原理。2.1 光学基础从分离的光线到相位差想象一下在你相机传感器前方有一个主镜头。从被摄物体上某一点发出的光线通过镜头后本应汇聚到传感器上的一个点形成清晰的像。PDAF系统在光路中巧妙地加入了一对分离透镜或通过微透镜实现类似功能它们分别覆盖镜头出射光瞳的左半部分和右半部分。这样来自同一物点的光线被这一对分离透镜分别引导在传感器平面上形成两个分离的子图像。当焦点准确时这两个子图像会完美重合在预定的位置上。当焦点不实时比如焦点偏前这两个子图像在传感器上的位置就会发生横向偏移一个偏左一个偏右。这个偏移的方向和距离就直接对应了焦点偏差的方向和量值。关键在于“相位差”。这里的“相位”并非指光波的震动相位而是指这两个子图像在传感器空间位置上的相对关系。相机内部专用的相位检测像素或模块会快速测量这两个子图像之间的偏移量即相位差。通过预先校准的算法相机能立刻知道“哦焦点偏前了5微米”或者“焦点偏后了3微米”。于是对焦系统可以直接命令马达将镜头移动相应的距离理想情况下一次移动就能到位。2.2 传感器上的实现专用像素与片上集成在传统的单反相机中PDAF是通过一个独立的相位检测模块实现的。这个模块位于反光板后方副反光板下方光线通过主反光板半透部分和副反光板反射到达。这种方式独立于成像传感器速度快但结构复杂。革命性的变化发生在将PDAF集成到主图像传感器上即片上相位检测。这主要分为两种形式专用相位检测像素这是目前主流方案。相机或手机厂商会在CMOS图像传感器上将一部分常规像素改造为相位检测像素。具体做法是在这些像素的微透镜下方用金属层遮挡住像素光电二极管的一半左半或右半。例如一个像素只接收来自镜头左半部分的光线它旁边的另一个像素只接收来自右半部分的光线。这样一对“左眼像素”和“右眼像素”就构成了一个最基本的相位检测点。通过比较这对像素输出信号的强度差或位置关系就能计算出相位差。这种方案的优点是集成度高能与成像无缝结合实现对焦点的全面覆盖。缺点是这些专用像素不参与最终成像会损失一点点有效像素和画质需要通过相邻像素信息进行插值补偿。全像素双核相位检测这是更先进的方案以佳能、索尼和一些手机传感器为代表。在这个方案中传感器上的每一个像素都被一分为二拥有两个独立的光电二极管A和B。每个微透镜下的这两个光电二极管分别接收通过镜头不同区域左/右的光线。这样每一个像素都同时具备成像和相位检测的能力。在拍照时两个光电二极管的信号合并作为该像素的成像信号保证了画质无损。在对焦时则通过比较左右两个光电二极管的信号差来进行相位检测。这种方案实现了对焦精度和画质的完美统一并且对焦点可以覆盖几乎整个画面带来了革命性的对焦体验尤其是追焦性能。注意无论是专用像素还是双核像素其相位检测能力都依赖于镜头的设计。镜头的光圈和光学特性必须能够提供足够分离的两束光线。这也是为什么大光圈镜头通常对焦更快更准因为进入的光线更多相位检测信号更强。3. 实战场景拆解手机与相机上的PDAF有何不同理解了原理我们来看看PDAF在手机和相机这两个主战场上是如何落地并带来不同体验的。3.1 智能手机微型化与算法驱动的极限手机上的PDAF是一场在极端空间限制下的工程奇迹。由于手机镜头模组纤薄无法像相机那样使用复杂的分离光学元件因此片上集成是唯一出路。早期手机采用专用相位检测像素现在高端机型普遍向全像素双核对焦演进。手机PDAF的挑战和特点非常鲜明像素尺寸极小手机传感器像素普遍在1.0μm到2.0μm之间。在如此微小的面积上实现像素遮蔽或分割对半导体工艺要求极高。信号微弱更容易受到噪声干扰。极度依赖算法由于硬件限制手机PDAF的原始数据相位差噪声较大。这就需要强大的ISP图像信号处理器和AI算法进行清洗、校正和预测。例如结合场景识别识别人脸、宠物、花朵、历史对焦数据以及来自陀螺仪、加速度计的运动信息共同决策最终的对焦位置。你感觉手机的“追焦”很聪明很大程度上是算法的功劳。多摄协同现代手机多摄像头系统PDAF可以跨摄像头工作。例如超广角镜头视野大可以更快地发现并锁定运动物体然后将对焦信息传递给长焦或主摄实现快速接力对焦。视频对焦的挑战拍照时PDAF可以瞬间完成。但在视频录制中需要实现平滑、无感的焦点过渡不能出现“呼吸效应”或拉风箱。这就需要一套复杂的视频AF算法通常结合PDAF、对比度检测以及人脸/人眼追踪以一定的速度阻尼来驱动镜头移动实现电影般的“焦点转换”效果。一个常见的手机对焦“坑”在光线极其昏暗的环境下手机的PDAF信号可能弱到无法使用系统会回退到速度慢、但更可靠的对比度对焦甚至触发夜景模式的多帧合成对焦。此时你会感觉对焦变慢、犹豫。解决方案通常是手动点击屏幕照亮物体如打开手电筒辅助对焦或者依赖激光对焦、ToF等辅助模块。3.2 可换镜头相机精度、速度与可靠性的典范在微单和单反相机上PDAF系统更为强大和专精。混合对焦系统现代无反相机几乎全部采用混合自动对焦即同时使用相位检测和对比度检测。相位检测提供速度和方向对比度检测提供终极精度尤其在静态拍摄时。相机处理器会智能地融合两者数据先由PDAF快速将焦点拉到大致位置再由对比度检测进行微调达到又快又准的效果。对焦点覆盖与类型相机传感器上的相位检测点数量庞大数百到数千个且类型多样。有对横线条敏感的“十字型”对焦点有对竖线条敏感的“线型”对焦点还有在低光照下更灵敏的“高灵敏度”对焦点。这些点广泛分布在画面中使得构图更加自由。追焦与物体识别这是相机PDAF系统的巅峰体现。通过专用处理器如佳能的DIGIC X索尼的BIONZ XR相机能实时处理海量相位检测点的数据预测运动物体的轨迹实现牢牢的“咬合”追焦。结合深度学习模型可以精准识别并追踪人眼、动物眼、鸟类、汽车、飞机等特定主体即使主体短暂被遮挡也能重新找回。镜头通讯与校准相机机身和镜头之间有高速数据通讯协议。机身不仅发送对焦指令还会结合镜头的对焦马达特性如步进马达、线性马达、音圈马达、当前焦距和光圈值计算出最精确的镜片移动量。高端系统还支持自动对焦微调功能以校正个别镜头可能存在的跑焦问题。相机对焦的实战心得区域对焦模式比广域/全局更可靠在复杂场景下使用“区域AF”或“扩展点AF”将相位检测点的活动范围限制在你构图的主体区域附近可以避免对焦点被背景干扰大幅提升追焦成功率。AF-C与AF-S的选择拍摄静止物体用AF-S单次对焦半按快门合焦后即锁定。拍摄运动物体必须用AF-C连续对焦相机会持续根据相位差信息驱动镜头保持焦点清晰。很多人像摄影师在拍摄动态人像时也习惯使用AF-C配合眼部追焦。警惕最小光圈限制相位检测需要足够的光线分离。当镜头光圈收缩到很小如f/16, f/22时进入的光线角度非常小可能导致相位检测失效相机会自动切换为对比度对焦速度变慢。在需要深景深而使用小光圈时要有心理准备。4. 超越PDAF辅助对焦技术与混合系统的协同虽然PDAF是主力但现代对焦系统是一个“团队作战”的工程。为了弥补PDAF在某些场景下的短板其他辅助技术被引入共同构建了可靠的对焦体验。激光对焦主要见于手机和部分相机。它主动发射一束人眼不可见的激光束到被摄物体通过测量激光反射回来的时间来计算距离。其优势是绝对精准、不受光线影响在纯黑环境下也能工作。缺点是作用距离短通常几米内且无法穿透玻璃等透明物体。它常被用来辅助PDAF进行初始测距或者在极暗环境下提供关键的距离信息。ToF飞行时间传感器原理与激光雷达类似但通常面阵更大能获取小范围的深度图。它提供的距离信息更丰富不仅用于对焦也用于人像虚化计算景深。它对PDAF是一个很好的补充和验证。对比度对焦如前所述它速度慢但精度极高。在混合对焦系统中它扮演着“终结者”的角色在PDAF完成粗调后进行最后的精细校准确保焦点达到最优对比度。在一些追求极致画质的风光、静物拍摄中专业摄影师仍会手动切换到纯对比度对焦如实时取景下的放大对焦。AI场景识别与预测这严格来说不是硬件对焦技术而是算法层面对对焦决策的增强。通过识别画面中的主体类型人、猫、狗、车、判断运动趋势系统可以提前预判对焦点应该跟随哪里甚至在主体出画前就做好重新寻找的准备。这让对焦系统显得更加“智能”和“贴心”。在实际产品中这些技术并非互斥而是协同工作。例如一款高端手机的对焦流程可能是激光/ToF提供初始距离预估 → PDAF快速锁定 → 对比度检测微调 → AI算法识别主体并持续追踪。这个流程在几十毫秒内完成用户感知到的就是“一点就对上还能牢牢跟住”。5. 性能边界与常见问题排查为什么有时还是会“失焦”即使有了先进的PDAF对焦失败的情况依然会发生。了解它的工作边界能帮助我们在实战中避免问题或快速找到解决方案。5.1 PDAF的物理与场景限制低反差与重复纹理这是所有对焦系统的天敌。面对一面纯色的白墙、雾蒙蒙的天空或者极度规则重复的图案如细密格栅PDAF无法检测到有效的相位差因为左右像素看到的图像几乎一样。此时系统会“迷惘”反复拉风箱或直接对焦失败。应对策略寻找画面中的边缘或对比点半按快门对焦后锁定AF-L再重新构图。或者手动对焦。极低光照虽然PDAF比对比度对焦更耐弱光但当光线暗到一定程度信号噪声比太差相位差计算会不可靠。相机或手机可能会自动调高ISO或开启对焦辅助灯如果配备来补充信息。应对策略使用外部光源照亮主体利用相机上的对焦辅助灯或者切换到手动对焦依靠峰值或放大显示来确认焦点。高速运动与突然变向PDAF和追焦算法有一定的反应和计算时间。当物体运动速度超过系统跟踪能力或者突然急转弯时焦点可能会丢失。应对策略选用更专业的、追焦性能更强的机身和镜头预判运动轨迹使用“扩展对焦区域”模式给系统一些缓冲空间提高快门速度即使短暂脱焦画面也不至于完全模糊。前景干扰当你想对焦远处的物体但画面中有密集的前景如透过栅栏拍动物时PDAF点可能会错误地对在前景上。应对策略使用单点对焦并精确地将对焦点放置在远处主体上如果可能改变拍摄角度减少前景干扰。5.2 系统性问题与校准机身-镜头跑焦这是可换镜头系统的一个经典问题。理论上机身和镜头的对焦标定应该是完美的。但个别镜头可能在个别机身上存在微小的系统误差导致PDAF认为合焦了但实际焦点偏前或偏后。这在最大光圈拍摄时尤为明显。排查与解决使用专业的跑焦测试卡进行拍摄。如果发现一致性偏差高端相机机身内通常提供“AF微调”功能允许用户针对该镜头保存一个校正值。如果问题严重可能需要将机身和镜头送厂校准。传感器灰尘影响如果灰尘恰好落在传感器表面的某个相位检测像素上可能会影响该点的对焦准确性。排查将镜头光圈收到f/16或更小对着白墙拍摄一张照片查看是否有明显的黑点。清洁传感器需格外小心建议使用专业的气吹和工具或交由服务中心处理。6. 未来展望对焦技术的下一站在哪里PDAF技术本身已经非常成熟但围绕它的创新远未停止。未来的对焦系统将朝着更智能、更融合、更超越视觉的方向发展。全域快门与全时PDAF目前的CMOS传感器大多是卷帘快门在高速扫描时不同行的相位信息存在微小的时间差可能影响超高速运动物体的追焦精度。全域快门传感器可以同时曝光所有像素为实现无畸变、无时滞的终极相位检测提供了硬件基础。深度学习的深度融合AI不再仅仅用于识别主体而是直接参与到相位差的计算和预测中。通过学习海量的对焦场景数据AI可以更准确地判断哪些相位信息是可靠的在复杂场景下做出更优决策甚至能预测下一秒主体的位置。多传感器融合的“感知对焦”未来的设备可能会融合视觉PDAF、深度ToF/LiDAR、声音麦克风阵列甚至运动IMU等多模态信息构建一个综合的环境感知模型。对焦系统不再仅仅是“找到最清晰的点”而是“理解场景后智能地决定焦点应该在哪里”。例如在视频会议中系统可以始终将焦点锁定在正在说话的人身上即使他/她在移动。计算摄影的延伸通过多帧合成和景深计算软件可以在一定程度上“弥补”对焦的失误。例如“先拍照后对焦”功能以及通过算法生成不同焦点位置的画面。但这并不能替代硬件级快速对焦带来的决定性瞬间捕捉能力。回望从对比度对焦到相位对焦的演进其核心始终是更高效地获取现实世界的空间信息。PDAF通过模拟人眼的双目视差将对焦从“试错”变成了“测量”这是一次根本性的效率飞跃。作为用户理解其原理和边界能让我们更好地驾驭手中的设备在关键时刻不再错过那些转瞬即逝的精彩画面。而作为技术的观察者看到对焦系统从单一的物理测量走向与人工智能、多传感器融合的广阔天地也让人对影像的未来充满期待。下一次当你瞬间抓拍到一个清晰画面时不妨在心里感谢一下这套精巧的、在幕后默默工作的相位检测系统。

相关新闻

北京创业扶持机构哪家适合小微企业:【博亚信诚】适配小微

北京创业扶持机构哪家适合小微企业:【博亚信诚】适配小微

开篇语:在北京创新创业浪潮持续升温的当下,大量小微企业涌入市场,选址产业园、寻求专业创业扶持成为企业发展初期的关键抉择。【博亚信诚】深耕北京产业园运营与企业创业扶持领域多年,依托本地化资源整合能力、一站式企业服务体系…

2026/10/16 16:51:01 阅读更多 →
Node.js+Vue.js全栈电商项目实战:从零部署甜品商城毕业设计

Node.js+Vue.js全栈电商项目实战:从零部署甜品商城毕业设计

这次我们来看一个基于 Node.js 和 Vue.js 的甜品网上商城系统,这是一个典型的 2026 届计算机毕业设计项目。对于即将毕业的同学来说,一个功能完整、技术栈主流、能跑通前后端、能部署上线的项目,是毕业设计和求职简历上的硬通货。这个项目就提…

2026/10/18 19:42:57 阅读更多 →
D2-补充阶段:软件工程中的健壮性、性能与可观测性优化实践

D2-补充阶段:软件工程中的健壮性、性能与可观测性优化实践

1. 项目概述:从“D2”到“补充”的深度思考 在任何一个技术或产品迭代的周期里,我们总会遇到一个看似简单却至关重要的环节——“补充”。当项目代号“D2”出现在任务列表上时,它往往不是一个全新的、从零开始的宏大叙事,而是一个…

2026/10/16 15:02:36 阅读更多 →

最新新闻

React前端工程化架构实践:响应式、可扩展、可维护的rea式设计

React前端工程化架构实践:响应式、可扩展、可维护的rea式设计

1. 从“rea”这个标题说起:一个被低估的缩写背后藏着什么第一次看到“rea”这个标题的时候,我承认自己愣了几秒。三个字母,没有上下文,没有说明,放在任何一个技术社区里都像是某种暗号。但恰恰是这种极简的命名方式&am…

2026/10/18 22:47:54 阅读更多 →
uni-app轨迹回放全攻略:定位采集、抽稀与动画调度实战

uni-app轨迹回放全攻略:定位采集、抽稀与动画调度实战

最近在做一个外勤场景的 uni-app 项目,业务方提了个需求:把当天某个配送员的行驶轨迹回放出来,要能暂停、能变速、能拖进度条。我当时以为这事很简单——把一串经纬度画到地图上不就行了?真动手才发现,轨迹回放在 uni-…

2026/10/18 22:47:54 阅读更多 →
数据结构课设实战:手写堆与链表实现任务调度器

数据结构课设实战:手写堆与链表实现任务调度器

简介:一套基于C/C实现的任务调度器课程设计源码,面向计算机专业大二学生,旨在解决数据结构课程设计中任务调度系统的设计与实现问题,适用于VS2019环境。压缩包共38个文件,以hpp头文件、cpp源文件、vcxproj工程文件等源…

2026/10/18 22:47:54 阅读更多 →
Vue3 + OpenLayers 大屏可视化基础模版:解决白屏卡顿图层错乱

Vue3 + OpenLayers 大屏可视化基础模版:解决白屏卡顿图层错乱

简介:这是一套面向前端开发者与地理信息系统(GIS)初学者的大屏可视化基础模板,聚焦Vue.js与OpenLayers融合开发,解决大屏项目中地图集成难、组件复用低、响应适配弱等常见问题,适用于监控中心、城市治理、能…

2026/10/18 22:47:54 阅读更多 →
Unity血条制作全指南:从Slider到FillAmount与性能优化

Unity血条制作全指南:从Slider到FillAmount与性能优化

很多新人在做Unity血条的时候,第一个想法都是“拖一个Slider,然后把value绑到血量上”,但等真正接到项目里,才发现问题远比想象的多:血条更新不及时、换装备后属性乱跳、Boss战时同屏几十根血条直接掉帧、伤害飘字和血…

2026/10/18 22:47:54 阅读更多 →
Chaste细胞群体动力学仿真实操:从项目搭建到结果可视化

Chaste细胞群体动力学仿真实操:从项目搭建到结果可视化

上一篇文章讲完 Chaste 的安装和基础概念,后台不少同行留言说:环境装好了,可真正打开一个仿真项目时还是很懵,不知道从哪里下手。这篇我就把自己用 Chaste 跑细胞群体动力学仿真的完整操作路径梳理一遍,从项目结构到核…

2026/10/18 22:46:51 阅读更多 →

日新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

月新闻

我发现了一个新思路:用 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/18 0:55:02 阅读更多 →
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/17 17:22:31 阅读更多 →
黑夜航拍船只数据集训练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/18 12:16:16 阅读更多 →