Origin软件快速傅里叶变换(FFT)操作指南:从数据准备到频谱分析
这次我们来看一个科研数据处理中的高频需求如何用 Origin 软件完成快速傅里叶变换FFT。对于理工科学生和研究人员来说处理实验数据、分析信号频谱是家常便饭。Origin 作为一款强大的科学绘图与数据分析软件其内置的 FFT 功能可以直接将时域信号转换为频域省去了自己编写复杂代码的麻烦。但很多人在实际操作中会遇到各种问题数据格式不对、参数设置看不懂、结果图不会调、甚至找不到 FFT 功能在哪里。这篇文章不讲复杂的数学原理重点解决“能不能用 Origin 做 FFT”以及“怎么用才能出结果、出好图”这两个实际问题。我们会从数据准备、FFT 操作步骤、参数详解、结果解读到图形美化一步步带你走通整个流程。无论你是处理音频信号、振动数据、还是电化学阻抗谱这套方法都适用。1. 核心能力速览在深入操作之前我们先快速了解 Origin 中 FFT 功能的核心特性和使用边界。能力项说明核心功能对单列或多列时域数据进行快速傅里叶变换得到幅度谱、相位谱、功率谱密度等。数据要求要求数据等间距采样。支持实数序列和复数序列的 FFT。输出类型可输出复数结果、幅度、相位、实部、虚部、归一化幅度、功率谱等。窗函数支持内置矩形窗、汉宁窗、汉明窗、三角窗、布莱克曼窗等多种窗函数用于减少频谱泄漏。硬件门槛无特殊要求。普通电脑即可运行性能取决于数据量大小。操作界面主要通过“分析”→“信号处理”→“FFT”菜单调用界面为对话框形式参数集中。结果可视化自动生成结果工作表和新图形窗口支持对频谱图进行高度自定义的绘图和美化。适合场景实验信号分析、振动频谱研究、音频处理、通信系统仿真、教学演示等。不适合场景非等间距采样数据需先插值超大数据量如数千万点可能受内存限制需要实时流式 FFT 或嵌入式部署的场景。2. 适用场景与使用边界Origin 的 FFT 功能主要服务于科研和工程领域的离线数据分析。它不是一个实时信号处理器而是一个强大的后处理工具。它最适合谁实验室研究人员处理示波器、数据采集卡导出的电压、电流、位移等时域信号。高校师生完成课程作业、毕业设计或科研项目中的频谱分析部分。工程师分析机械振动、噪声、通信信号等查找特征频率。任何需要从时域数据中观察频率成分但又不想或不会编程如 MATLAB、Python的人。它能解决什么问题频谱分析找出信号中存在的频率成分及其强度。滤波设计通过观察频谱确定滤波器的通带和阻带。系统辨识分析系统的频率响应特性。噪声检测识别信号中混杂的噪声频率。数据压缩与特征提取通过保留主要频率成分来简化数据。使用边界与注意事项数据质量FFT 结果严重依赖于输入数据。数据中的噪声、趋势项如直流偏置会污染频谱。进行 FFT 前通常需要对数据去趋势、去均值。采样定理必须遵守奈奎斯特采样定理。采样频率至少是信号最高频率的两倍否则会发生混叠导致错误结果。频谱泄漏对有限长度的信号做 FFT相当于对原信号加矩形窗必然导致频谱泄漏。选择合适的窗函数如汉宁窗可以缓解但无法完全消除。分辨率频率分辨率 Δf 采样频率 Fs / 数据点数 N。要提高分辨率要么降低 Fs需保证不混叠要么增加 N采集更长时间的数据。合规使用确保你拥有处理数据的合法权利特别是涉及他人实验数据或商业数据时。Origin 软件本身需使用正版授权。3. 环境准备与前置条件在开始 FFT 分析前需要确保你的软件环境和数据格式已经就绪。1. 软件环境Origin 版本本文演示基于 Origin 2018 及更高版本如 Origin 2021, 2022, 2025b。FFT 功能在较老版本中也存在但界面和选项可能略有差异。请确认你的 Origin 已正确安装并激活。操作系统Windows 是 Origin 的主要平台macOS 版本功能可能稍有滞后。建议在 Windows 环境下操作。2. 数据准备最关键的一步你的时域数据应该已经整理在 Origin 的工作表Worksheet中。一个典型的数据结构如下A(X) - 时间B(Y) - 通道1C(Y) - 通道20.0000.120.050.0010.350.180.0020.580.22.........必须满足的条件等间距采样X 列通常是时间必须是严格等间隔递增的。Origin 的 FFT 默认第一列为 X并基于其计算采样间隔。如果数据不等距需要先使用“分析”→“数学”→“插值/外推”功能进行重采样。数据连续性Y 列中不应有缺失值空单元格。如有缺失需进行插值填补或删除该行。去趋势强烈建议在进行 FFT 前去除数据的线性或多项式趋势。这能避免直流分量和低频趋势对频谱的干扰。可通过“分析”→“数学”→“减去直线”或“多项式拟合”后减掉趋势项来实现。3. 明确分析目标在操作前想清楚你需要幅度谱、相位谱还是功率谱是否需要加窗是否需要输出复数结果以供后续计算如逆 FFT4. FFT 操作步骤详解下面我们以一个包含 50 Hz 和 120 Hz 正弦波的合成信号为例演示完整的 FFT 流程。步骤 1准备或导入数据假设我们有一个合成信号y 0.7*sin(2*π*50*t) sin(2*π*120*t)采样频率 Fs 1000 Hz采集 1 秒共 1000 个点。 你可以手动在 Origin 中输入公式生成或从文本文件导入。数据应放在工作表的一列 Y 中对应的 X 列为时间从 0 到 0.999间隔 0.001。步骤 2执行 FFT选中包含信号数据的 Y 列。点击顶部菜单栏的“分析”→“信号处理”→“FFT”。弹出“FFT”对话框。这是所有魔法发生的地方。步骤 3配置 FFT 参数重点FFT 对话框包含多个标签页我们逐一拆解“设置”标签页输入确认你的信号数据范围是否正确。采样间隔通常 Origin 会自动从 X 列计算出来Δt 1/Fs。如果 X 列不是时间或单位不对可以在这里手动输入实际的采样间隔例如 0.001 秒。窗函数默认是“矩形窗”。对于大多数情况推荐使用“汉宁窗 (Hanning)”来减少频谱泄漏。其他如汉明窗、布莱克曼窗各有特点可根据信号类型选择。输出设置“标准化幅度”勾选此项输出的幅度谱会进行归一化处理使其最大值对应于原始信号中该频率分量的实际振幅对于正弦信号。这是最常用且推荐的选项。“输出选项”选择你需要的结果。通常选择“幅度和相位”或“实部和虚部”。如果只需要看频谱选前者。“高级”按钮可以设置 FFT 点数。默认使用输入数据的点数。如果数据点数不是 2 的幂Origin 会自动补零到下一个 2 的幂这有助于提高计算效率和频率分辨率。你也可以手动指定一个更大的 2 的幂次数如 1024, 2048。“绘图”标签页这里可以预先设置结果图形的样式。你可以选择是否自动创建图形以及图形的类型如幅度 vs 频率。配置完成后点击“确定”。步骤 4查看结果Origin 会生成两个新窗口结果工作表包含多列数据例如频率Frequency、幅度Magnitude、相位Phase、实部Real、虚部Imaginary等。频率列从 0 开始到奈奎斯特频率Fs/2结束。图形窗口默认绘制出幅度谱图Magnitude vs Frequency。你会在频率 50 Hz 和 120 Hz 处看到两个明显的峰其幅度比约为 0.7:1因为原始信号振幅比为 0.7:1。5. 结果解读与图形美化得到频谱图只是第一步正确解读和美化才能让结果在报告或论文中脱颖而出。1. 结果解读频率轴横坐标是频率范围从 0 到 Fs/2500 Hz。所有高于 Fs/2 的频率成分都会通过混叠折叠到这个范围内。幅度谱纵坐标是归一化后的幅度。峰值对应的频率就是信号中存在的频率成分。峰值的高度反映了该频率成分在原始信号中的强度对于周期信号接近其振幅。相位谱另一个图形窗口可能显示了相位谱。相位信息在某些应用如系统辨识中很重要。0 Hz 分量频谱图最左侧的 0 Hz 分量代表信号的直流分量平均值。如果你在 FFT 前已经去除了均值这个值会很小。2. 图形美化实战默认的频谱图可能比较简陋我们需要将其调整得更专业。调整坐标轴双击 X 轴在“刻度”标签下可以设置刻度范围。例如如果我们只关心 0-200 Hz就将范围设为 0 到 200。在“标题”标签下修改坐标轴标题为“Frequency (Hz)”和“Magnitude”。修改图形类型默认可能是“线符号”图。对于频谱通常使用垂直线杆状图更能清晰显示峰值。在图形上右键 → “绘图细节”在“线条”选项卡中将“连接”改为“垂直线”并调整线宽和颜色。添加峰值标注Origin 可以自动寻峰并标注。在图形窗口的菜单栏点击“分析”→“峰值和分析”→“峰值分析器”。在弹出的对话框中点击“下一步”选择“峰”作为目标然后让 Origin 自动寻峰。在结果页面你可以选择将峰值坐标频率和幅度以标签形式标注在图上。这对于报告频率值非常方便。添加图例和标题为图形添加一个清晰的标题如“FFT Spectrum of Composite Signal”。如果有多条曲线确保图例清晰明了。3. 导出结果导出图形在图形窗口点击“文件”→“导出图形”可以选择 PNG、TIFF、EPS、PDF 等多种格式并设置高分辨率如 300 DPI 或 600 DPI以满足期刊出版要求。导出数据在结果工作表点击“文件”→“导出”→“ASCII”可以将频率和幅度数据导出为文本文件供其他软件如 MATLAB, Excel进一步处理。6. 高级技巧与常见应用掌握了基础操作后下面这些技巧能让你用 Origin FFT 解决更复杂的问题。1. 处理多列数据多通道FFT如果你有多个通道的信号如三轴加速度计数据可以同时选中多列 Y 数据然后执行 FFT。Origin 会为每一列数据分别进行变换并将结果并排放在新的工作表中方便对比分析。2. 功率谱密度PSD估计功率谱密度在随机振动和噪声分析中非常常用。在 FFT 对话框中选择输出为“幅度”后可以手动计算功率谱PSD (Magnitude^2) / (Fs * N)其中 N 是 FFT 点数。更简单的方法是Origin 的“分析”→“信号处理”→“PSD”菜单提供了专门的功率谱密度计算功能它基于 Welch 平均周期图法结果更平滑、更稳定推荐使用。3. 加窗Windowing的深入理解矩形窗相当于不加窗。主瓣最窄但旁瓣衰减慢频谱泄漏最严重。适用于瞬态信号或数据长度恰好是信号周期整数倍的情况。汉宁窗最常用的窗。旁瓣衰减快能有效抑制泄漏但主瓣稍宽频率分辨率略有下降。适用于大多数连续信号。汉明窗与汉宁窗类似但第一个旁瓣衰减更大。平顶窗幅度精度最高常用于校准测量但频率分辨率最差。 选择窗函数本质上是在频率分辨率和频谱泄漏之间做权衡。对于未知信号从汉宁窗开始尝试是个好习惯。4. 逆FFTIFFT验证如果你输出了 FFT 的复数结果实部和虚部可以使用“分析”→“信号处理”→“逆 FFT”功能将频谱数据转换回时域。这是验证你 FFT 过程是否正确、窗函数是否引入失真的好方法。理论上对原始信号做 FFT 再做 IFFT应该能完美还原原始信号不考虑计算误差。5. 处理非平稳信号短时傅里叶变换STFT对于频率随时间变化的信号如 chirp 信号标准的 FFT 会失效。Origin 提供了“短时傅里叶变换”工具“分析”→“信号处理”→“STFT”它通过滑动窗口对信号进行分段 FFT最终得到一个二维的时频图Spectrogram非常适合分析非平稳信号。7. 常见问题与排查方法在使用 Origin FFT 时你可能会遇到以下问题这里提供排查思路。问题现象可能原因排查方式解决方案FFT 后频谱图是空白或杂乱无章1. 数据包含大量 NaN 或空值。2. 数据 Y 值全部为 0 或常量。3. 采样间隔设置错误。1. 检查原始数据列查找并处理空单元格。2. 绘制原始数据曲线看是否有有效信号。3. 核对 FFT 对话框中的“采样间隔”是否与数据匹配。1. 使用“编辑”→“清除”→“清除空单元格”或插值。2. 检查数据来源和采集过程。3. 手动输入正确的采样间隔1/采样频率。频谱峰值频率与预期不符1. 混叠Aliasing。2. 频率分辨率不足峰值被“抹平”。3. 窗函数导致峰值频率偏移。1. 确认信号最高频率是否小于 Fs/2。2. 计算频率分辨率 Δf Fs/N看是否小于信号频率间隔。3. 尝试使用矩形窗对比观察峰值位置变化。1. 提高采样频率 Fs。2. 增加数据点数 N采集更长时间。3. 了解所用窗函数对峰值定位的影响汉宁窗等会使峰值轻微展宽和偏移。频谱图中出现很多小毛刺1. 信号本身含有噪声。2. 频谱泄漏严重。3. 未去除数据趋势项。1. 观察原始时域信号是否平滑。2. 检查是否使用了矩形窗。3. 对原始数据做去均值、去线性趋势处理。1. 对信号进行平滑滤波后再做 FFT。2. 更换为汉宁窗等旁瓣衰减快的窗函数。3. 在 FFT 前执行“分析”→“数学”→“减去直线”。找不到“FFT”菜单或功能灰色1. 选中的数据列不正确如选了 X 列。2. Origin 版本过旧或特定模块未安装。1. 确认在工作表中选中了 Y 数据列。2. 查看“帮助”→“关于 Origin”确认版本。1. 正确选中一列或多列 Y 数据。2. 升级到较新的 Origin 版本如 2018。逆 FFT 无法还原原始信号1. FFT 输出时未选择“实部和虚部”。2. 对幅度谱做了修改如滤波。3. 窗函数导致了信息丢失。1. 检查用于 IFFT 的数据是否包含完整的实部和虚部信息。2. 确认是否只对幅度谱进行了 IFFT。1. 执行 FFT 时输出选项务必选择“实部和虚部”。2. 逆 FFT 需要完整的复数频谱信息仅幅度谱不够。8. 最佳实践与使用建议为了更高效、更准确地使用 Origin FFT遵循以下最佳实践可以事半功倍。流程化操作将数据预处理去趋势、去均值、FFT 分析、图形美化、数据导出等步骤保存为一个 Origin 模板.OTPU 文件或项目文件.OPJU。下次处理类似数据时直接打开模板替换数据即可极大提升效率。数据备份在进行任何不可逆操作如修改原始数据列前先复制一份原始数据到新的工作表或列中。Origin 的“编辑”→“撤销”有时并不可靠。参数记录在实验记录或分析报告中务必记录下 FFT 的关键参数采样频率Fs、数据点数N、使用的窗函数、是否归一化。这是结果可重复、可比较的基础。从简单信号验证开始如果你对一组新数据做 FFT 结果存疑可以先用一个已知频率和幅度的纯正弦信号进行测试验证整个分析流程和参数设置是否正确。理解频谱图的物理意义不要只关注软件操作。花时间理解幅度谱、相位谱、功率谱密度、窗函数、频率分辨率、混叠等概念的物理和数学含义。这能帮助你在结果异常时快速定位问题。结合其他工具Origin 的 FFT 功能强大但对于极其复杂的信号处理如自适应滤波、小波变换、高阶谱分析可能需要借助 MATLAB、Python (SciPy) 或 LabVIEW 等专业工具。Origin 的优势在于快速可视化、报告级出图和与办公软件的整合。Origin 的快速傅里叶变换功能将复杂的信号处理算法封装成了直观的图形界面操作。它可能没有命令行工具那样灵活但对于绝大多数科研绘图和数据分析需求来说它提供了从数据到出版级图表的最短路径。关键在于掌握其数据格式要求、参数设置含义和结果解读方法。当你下次需要从一串时域数据中寻找隐藏的频率秘密时不妨打开 Origin按照本文的步骤尝试一下你会发现频谱分析并没有想象中那么困难。建议将本文中关于参数设置和问题排查的部分收藏备用它们能帮你避开大多数初学者会遇到的坑。

相关新闻

Armbian系统在ARM设备上的技术重构与部署实战

Armbian系统在ARM设备上的技术重构与部署实战

Armbian系统在ARM设备上的技术重构与部署实战 【免费下载链接】amlogic-s9xxx-armbian Supports running Armbian on Amlogic, Allwinner, and Rockchip devices. Support a311d, s922x, s905x3, s905x2, s912, s905d, s905x, s905w, s905, s905l, rk3588, rk3568, rk3399, rk3…

2026/10/18 8:28:39 阅读更多 →
《企鹅岛》桌游解析:环保主题下的策略资源管理与动态版图设计

《企鹅岛》桌游解析:环保主题下的策略资源管理与动态版图设计

这次我们来看一个名为《企鹅岛》的1-4人策略游戏项目,它正在Kickstarter上进行众筹。游戏的核心玩法非常直观:玩家扮演救援者,在因冰雪融化而逐渐消失的企鹅家园里,与时间赛跑,尽可能多地营救企鹅。这不仅仅是一个桌游…

2026/10/18 8:28:40 阅读更多 →
OpenClaw智能体框架:本地化部署、核心架构与实战应用全解析

OpenClaw智能体框架:本地化部署、核心架构与实战应用全解析

1. 项目概述:从“龙虾”到智能体,OpenClaw到底是什么?最近在AI圈子里,一个代号“龙虾”的项目热度飙升,说的就是OpenClaw。如果你在技术社区或者社交媒体上看到有人讨论“本地部署龙虾”、“OpenClaw接入飞书”&#x…

2026/10/18 8:29:36 阅读更多 →

最新新闻

HRNet人体姿态估计原理与工业部署实战指南

HRNet人体姿态估计原理与工业部署实战指南

简介:本资源为HRNet人体姿态检测模型的轻量级开源实现代码包,面向计算机视觉方向的开发者、算法工程师及深度学习初学者,解决高精度关键点定位与多尺度特征融合建模问题,适用于视频监控、人机交互、虚拟现实等实际场景。压缩包共3…

2026/10/18 17:47:45 阅读更多 →
知识图谱标注工具源码深度解析:SPO三元组标注与数据质量实践

知识图谱标注工具源码深度解析:SPO三元组标注与数据质量实践

简介:一款基于 Python3 的本地化知识图谱标注工具源码,面向知识图谱构建、NLP 工程与算法研究人员,用于解决文本中命名实体和关系的高效联合标注问题。工具通过自定义快捷键和背景色区分实体与关系类型,支持撤销、取消标注及文本格…

2026/10/18 17:47:45 阅读更多 →
力扣排序题全攻略:快排、归并、TopK与高频套路详解

力扣排序题全攻略:快排、归并、TopK与高频套路详解

排序题目在力扣里属于那种“看起来谁都会,一写就出问题”的类型。很多人刷题第一站就是排序,觉得无非就是调个sort()函数,但真到了面试手撕快排、或者遇到“逆序对”“合并区间”这类披着排序外衣的题,才意识到自己对排序的理解只…

2026/10/18 17:47:45 阅读更多 →
图像处理与计算机视觉技术综述:从PPT大纲到可复现基线

图像处理与计算机视觉技术综述:从PPT大纲到可复现基线

简介:这份PPT面向计算机、人工智能方向的初学者与进阶学习者,系统梳理图像处理与计算机视觉的基础概念、发展脉络与技术构成,帮助读者建立从二维图像分析到三维场景理解的完整知识框架。资源包内含1个PPT文件,约1.55MB&#xff0c…

2026/10/18 17:47:45 阅读更多 →
Redis分布式锁与秒杀削峰:从抢单超卖到异步落库的工程实践

Redis分布式锁与秒杀削峰:从抢单超卖到异步落库的工程实践

简介:在电商秒杀、限时抢购等场景下,库存超卖和并发一致性问题一直是后端开发的重点。一个基于SpringBoot的Redis分布式锁抢单秒杀项目,面向具备Java基础、希望掌握高并发处理与分布式锁原理的开发者,完整演示了从加锁扣库存到返回…

2026/10/18 17:47:45 阅读更多 →
FTP主动/被动模式全解析:原理、配置与数据连接故障排查

FTP主动/被动模式全解析:原理、配置与数据连接故障排查

你在某台Linux服务器上搭好了FTP服务,把账号密码发给同事,结果对方用FileZilla连上来,登录倒是正常,目录列表却一直转圈圈,最后弹出一句“无法打开数据连接”。这样的问题我排查过太多次,几乎所有初次接触F…

2026/10/18 17:46:45 阅读更多 →

日新闻

基于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 阅读更多 →