news 2026/9/3 1:50:13

塔防战争重制版关卡编辑器:从地图设计到波次配置的完整指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
塔防战争重制版关卡编辑器:从地图设计到波次配置的完整指南

这次我们来看一个很容易被忽略的玩法入口:塔防战争重制版自带的关卡编辑器。它不要求你会写代码,也不要求你懂建模,核心是把“敌人路线、防御塔点位、波次节奏和经济数值”用可视化方式配出来。如果你平时玩塔防游戏喜欢研究关卡设计,或者想做一个属于自己的自定义地图,这个编辑器值得完整过一遍。

这类编辑器通常走的是“先摆地形,再画路线,再放塔位,最后配波次”的工作流。和代码编辑器、文档编辑器不同,它输出的是地图和关卡配置,而不是程序文件。本文会从编辑器入口开始,带你把一张自定义塔防地图从新建、编辑、测试到保存分享的完整流程走通,并给出常见报错、性能观察和批量生成地图的思路。

需要提前说明的是:不同版本的游戏,编辑器菜单位置、按钮名称和配置项可能会有差异。以下内容以“塔防战争重制版编辑器”的通用操作逻辑展开,具体入口和参数名请以你本机安装版本为准。

1. 核心能力速览

能力项说明
项目类型游戏内置关卡/地图编辑器
操作界面图形化编辑器,非命令行工具
主要功能地形绘制、路径编辑、塔位摆放、敌人波次配置、资源与经济调整、测试运行
是否需要编程通常不需要,部分版本支持脚本或外部配置扩展
启动方式游戏主菜单内的编辑器入口
支持平台Windows 为主,具体看游戏版本
外部 API通常不开放 HTTP API,但关卡文件可能支持外部管理
批量任务支持通过复制地图模板、批量修改配置实现
适合场景自定义关卡制作、玩法原型验证、社区地图分享
学习门槛低到中,重点是理解路径、波次、经济三者关系

从材料看,这个编辑器的定位是“让玩家自己做地图”,不是面向专业关卡设计师的完整 DCC 工具。所以它的操作方式会偏向可视化拖拽,而不是节点编程。理解这一点之后,后面的操作就不容易走偏。

2. 适用场景与使用边界

这个编辑器适合三类人:

第一类是塔防玩家,想玩到不一样的路线和波次组合,自己动手做图比等别人更新更快。第二类是地图作者,想做一个完整的自定义塔防关卡发布给社区,编辑器是最直接的制作工具。第三类是刚接触关卡设计的新手,想练手路径设计、难度曲线和资源投放,编辑器是低成本的试错环境。

它能解决的核心问题有三个:一是把想法变成可玩的地图,不需要美术和程序基础;二是快速验证平衡性,改一个敌人血量或金币数值就能立刻测试;三是形成可分享的地图文件,让其他人也能玩到你做的内容。

但也要清楚它的边界。它做不了复杂的剧情演出,做不了高精度模型动画,更不适合用来做完全不同于塔防玩法的其他游戏类型。如果目标是做商业级独立游戏,那还是应该选择完整的游戏引擎,而不是游戏内置编辑器。

使用边界方面,需要特别注意版权和合规问题。编辑器里使用的贴图、音效、模型、图标等素材,如果来源是游戏自带素材包,只能用于该游戏的 MOD 和社区分享,不能直接拿去做商业项目或用在自己的独立游戏里。如果是从外部导入素材,必须确认素材有授权。发布自定义地图时,不要在标题和描述里蹭其他 IP 的名称和角色,避免侵权。涉及玩家上传的 UGC 内容,原作者需要保留署名信息,平台方也应按社区规则审核。

3. 环境准备与前置条件

开始之前,先确认你的环境能满足编辑器运行要求。

3.1 基础环境检查清单

检查项建议
游戏本体确保游戏已安装,并更新到支持编辑器功能的版本
编辑器模块部分版本需要额外下载编辑器组件,主菜单中如果找不到入口,先检查 DLC/组件是否勾选
操作系统Windows 10/11 或游戏说明中指定的系统版本
磁盘空间预留至少 2GB 到 5GB 空间,用于保存地图、临时缓存和导出资源
存档目录确认游戏地图默认存放目录,后续保存和备份会用到
显示分辨率建议 1920x1080 或更高,编辑器界面信息密度较高
输入设备鼠标键盘,滚轮用于缩放和视角调整

3.2 存档目录与文件管理

塔防编辑器的产物一般是地图文件、配置文件和一个缩略图。建议在正式编辑之前先规划好目录:

[游戏安装目录或用户文档目录] ├─ Maps │ ├─ EditorOutput │ │ ├─ MyFirstTD │ │ │ ├─ map.dat │ │ │ ├─ config.json │ │ │ └─ thumbnail.png │ └─ Templates │ └─ Official_Template ├─ Mods │ └─ CustomAssets │ ├─ Textures │ ├─ Models │ └─ Audio └─ Logs

上面的目录结构是一个参考模板,不是所有游戏都一样。更稳妥的做法是:先在编辑器里新建一张默认地图并保存一次,然后去文件夹里看生成了哪些文件,再按生成结果整理目录。

3.3 版本与更新

如果编辑器入口缺失,优先检查游戏版本和扩展组件。常见原因是当前版本未包含地图编辑器模块。确认方式可以看启动器里的 DLC/组件列表,也可以在游戏社区或官方文档里查编辑器对应的版本号。不要直接找第三方“编辑器和编译器的区别”这类通用话题来对照,游戏编辑器和代码编辑器是完全不同的产品逻辑。

4. 安装部署与启动方式

塔防战争重制版编辑器的部署分为两层:第一层是确认游戏内组件完整,第二层是掌握从游戏启动到编辑器界面的路径。

4.1 启动流程

通用启动路径如下:

启动游戏 -> 主菜单 -> 选择“编辑器”或“地图编辑器” -> 等待编辑器模块加载

如果主菜单没有直接显示编辑器按钮,可以尝试从“创意工坊”“MOD 管理”“自定义游戏”等入口进入。部分版本需要先创建一个自定义游戏,再在房间设置里点击“编辑地图”。这些入口变化比较常见,不用死记,按实际版本找即可。

启动过程中,编辑器出现任何阻塞,优先查看 Logs 目录下的日志文件。以下是一个示例启动命令模板,仅用于说明流程,实际请使用游戏启动器:

# 示例:通过命令行直接启动游戏并打开编辑器 GameLauncher.exe --editor --map Template_01

这种命令行参数不一定在所有版本可用。如果游戏本身没有提供命令行参数,直接忽略即可,不需要强求。

4.2 新建关卡

进入编辑器后,第一步是新建关卡。操作顺序一般为:

  1. 点击“新建地图”或“新关卡”。
  2. 选择地图尺寸。塔防地图常见尺寸是 32x32、48x48、64x64,单位是地图格子。
  3. 设置玩家数量。单人防守图和双人合作图的出生点与资源分布逻辑不同。
  4. 选择基础模板。建议第一次使用官方空模板,而不是直接改复杂模板。

新建成功后,编辑器会显示一张空白地图。此时应该先保存一次,确认保存路径正确、文件能正常写盘,再开始编辑。

4.3 保存规范

地图命名建议使用“地图名_版本号”的格式,例如:

MyFirstTD_v01

不要用中文临时名加日期,避免后续分享时文件名冲突。保存成功后,可以检查地图所在目录是否生成了对应的地图文件和缩略图文件。

5. 功能测试与效果验证

编辑器功能较多,建议按“地形 -> 路径 -> 塔位 -> 波次 -> 经济 -> 测试运行”的顺序逐项验证。每完成一步,就进入测试模式看一眼,不要全部搭完再调。

5.1 新建关卡与画布设置

测试目的:确认地图创建成功,画布尺寸和网格显示正常。

操作步骤操作内容预期结果
1点击新建地图,选择 48x48 尺寸生成空白画布,网格线清晰可见
2确认默认玩家出生点和基地位置画布上有玩家 1 的基地标识
3保存地图为空模板保存成功,无报错

判断成功的标准:画布网格正常、基地标识存在、能保存。如果画布长时间黑屏或网格断裂,优先排查显卡驱动和游戏着色器缓存;如果保存失败,检查存档目录写权限和磁盘空间。

5.2 地形绘制与装饰物摆放

塔防地图中,地形类型直接影响塔位合法性。常见做法是:

  • 用“道路”或“地面”笔刷画出敌人行进区域的底层。
  • 用“高台”“丘陵”或“阻挡物”标出不可建造区域。
  • 用“装饰物”填充地图边缘,让画面不空旷。

操作步骤:

选择地形笔刷 -> 设置笔刷大小 -> 按住鼠标左键绘制 -> 右键取消 -> 切换到装饰物分类 -> 点击放置

绘制完成后,建议进入测试模式确认两点:第一,敌人是否能在道路上正常行走;第二,装饰物是否挡住了塔位放置。很多新手地图做出来“路上有草”,是因为装饰物没有正确分类到“可通行层”,导致怪物寻路卡死。

判断成功的标准:地形绘制后视觉反馈正常,没有出现网格错位;放置的装饰物可以单独选中并删除。失败时优先检查笔刷层级和装饰物碰撞属性。

5.3 防御塔点位与路径编辑

这是塔防编辑器最核心的一步。路径和塔位是两个独立体系:路径决定敌人怎么走,塔位决定玩家在哪建塔。

操作顺序建议:

  1. 放置敌人出生点。
  2. 绘制路线,路线越短,关卡难度越高。
  3. 放置路径拐点,拐点数量影响怪物转弯行为。
  4. 在道路两侧放置可建造塔位。
  5. 塔位区域与路线保持至少 1 格间距,避免视觉遮挡。

预期结果:敌人出生点 -> 拐点 -> 基地之间有一条连贯路径,游戏内敌人会沿该路线行进。塔位覆盖范围应能覆盖到整条路线,不留火力盲区。

常见失败原因:

问题现象可能原因排查方式
敌人不走自定义路线路径节点未连成完整折线检查出生点到终点是否首尾闭合
路径断头转弯处格子没对齐放大画布检查相邻格子
塔位无法放置地形类型不支持建造切换塔位地形为可建造层

5.4 敌人波次与资源配置

波次配置是本编辑器的核心玩法参数。进入“波次编辑”界面后,需要配置每个波次的敌人类型、数量、刷新间隔和奖励金币。

典型的第一波设计:

参数建议值
波次编号Wave 1
敌人类型基础小兵
敌人数量8
刷新间隔1.5 秒
击杀奖励20 金币
波次触发间隔15 秒

这里不用照搬数值,重点是理解设计逻辑:第一波要简单,让玩家攒出第一座塔;第 5 波左右需要出现血量更高的精英怪或轻甲怪;第 10 波以后要用数量加类型混合的方式制造压迫感。波次之间要留出玩家升级塔的窗口期,否则体验会变成“一直在救火”。

验证方法:进入测试模式,直接跳转到第 5 波和第 10 波,看敌人血量、数量和刷出间隔是否合理。金币曲线要注意前中期节奏,如果玩家打完 5 波连三座高级塔都建不起,说明奖励太少,需要回调。

5.5 测试运行与平衡性调整

完成基础配置后,点击“测试模式”或“运行地图”。此时编辑器会把当前地图临时编译成可玩关卡,玩家可以在测试环境中完整游玩。

测试重点:

  • 从第 1 波开始完整跑到第 10 波。
  • 观察前 3 波敌人是否积压。
  • 观察塔位是否都能覆盖有效路线。
  • 观察金币获取与建塔价格是否匹配。
  • 观察基地血量在正常塔防策略下是否足够。

如果出现“敌人堵在出生点不动”,多半是路径寻路失败,回 5.3 检查路径连通性。如果“敌人走一半突然回头”,说明路径节点存在环形寻路,需要删除多余折线拐点。如果“玩家金币太多,塔随便乱建”,说明经济奖励过高,需要降低击杀金币或提高塔价格。

5.6 保存、导出与分享

制作完成后,建议依次完成以下操作:

  1. 保存地图文件。
  2. 确认缩略图已生成,没有黑色占位图。
  3. 填写地图名称、描述和难度标签。
  4. 将地图导出到“社区分享目录”。
  5. 在自定义游戏列表中尝试加载该地图。

导出后最好重新开一个游戏实例加载一次地图,而不是在编辑器里直接开。这样可以验证地图文件是否完整,避免朋友下载后打不开。

6. 数据文件、批量构建与内容扩展

很多新手以为编辑器只能一张图一张图手工做,其实地图配置如果以文件形式存在,就可以通过文件级处理做批量构建和内容扩展。

6.1 关卡文件结构

先找到已保存地图的文件夹,观察文件结构。常见组成包括:

MyFirstTD_v01 ├─ map.dat ├─ config.json ├─ thumbnail.png └─ scripts └─ waves.lua (如果支持脚本)

config.json一般记录地图尺寸、玩家数量、初始金币、基地血量等基础参数。这属于编辑器通用设计思路,不是某个游戏的标准,具体字段以实际生成的文件为准。

6.2 批量修改配置模板

如果关卡文件是 JSON 或类似结构化文本,可以通过脚本批量修改多个地图的数值。示例脚本如下,需要先确认你的地图配置格式兼容:

import json import glob # 批量修改所有地图的初始金币和基地血量 for map_file in glob.glob("./maps/*/config.json"): with open(map_file, "r", encoding="utf-8") as f: data = json.load(f) # 字段名仅作演示,实际以编辑器生成为准 data["initialGold"] = 800 data["baseHealth"] = 25 with open(map_file, "w", encoding="utf-8") as f: json.dump(data, f, ensure_ascii=False, indent=2) print(f"updated {map_file}")

这段代码的作用是批量把多个地图的初始金币改成 800,基地血量改成 25。注意:如果编辑器使用二进制格式存储地图,这个脚本无法生效。脚本只能作为通用思路参考,实际字段名和路径需要按本机环境调整。

6.3 外部素材管理

如果编辑器支持导入自定义模型、贴图或音效,就应该建立统一的素材目录,避免路径混乱:

Mods/CustomAssets/ ├─ Models/ ├─ Textures/ └─ Audio/

所有素材文件名使用“项目前缀_类型_名称”的命名方式,例如:

TD_M_HeroTower.fbx TD_T_StoneGround.png TD_A_Explosion.wav

这样做的好处是,后续批量替换素材时不会因为中文名、空格或重名导致导入失败。

6.4 接口 API 说明

游戏内置编辑器通常不提供 HTTP API 或 WebSocket 接口,不像 Web 服务那样通过 curl 请求就能调用。更准确的理解是:编辑器提供了“地图文件读写接口”和“测试运行接口”,这些接口闭包在游戏内部,外部脚本无法直接访问。

如果你的需求是做地图自动化生成或批量难度调整,优先考虑先把地图导出成可读格式,再用脚本处理。不要试图通过内存修改或注入方式调用编辑器内部功能,这违反游戏用户协议,也有安全风险。

7. 资源占用与性能观察

编辑器运行时会有编辑态和测试态两种资源占用模式,二者差异较大,需要分别观察。

7.1 编辑态资源占用

编辑态主要消耗 CPU 和内存,GPU 压力相对较低。由于编辑器需要实时响应鼠标交互、绘制网格、加载地形纹理,CPU 单核性能和内存容量对编辑流畅度影响最大。地图尺寸越大,网格越密,内存占用越明显。

推荐观察方式:

  1. 打开任务管理器或资源监视器。
  2. 切到“性能”页,观察 CPU、内存、GPU 三个指标。
  3. 在编辑器中执行“地图放大/缩小”“放置大量装饰物”“切换地形笔刷”三个操作,记录峰值变化。

如果编辑时卡顿严重,优先检查是否开启了最高画质阴影和后期特效,这些效果在编辑态没有实际作用,只增加 GPU 负担。可以临时把画质调低一个档位。

7.2 测试态资源占用

进入测试模式后,游戏要同时计算敌人寻路、波次逻辑、塔攻击逻辑和特效渲染,这时 GPU 占用会明显上升,内存也会因为加载地图资源而增加。

地图元素性能影响控制建议
单波怪物数量影响 AI 寻路与碰撞计算单波不要超过 50 到 80,具体看机器
装饰物数量增加渲染批次同屏装饰物控制在 200 个以内
特效密度增加 GPU 粒子计算塔升级特效不要重复叠加
路径拐点影响寻路计算量路径节点尽量精简
地图尺寸影响加载时间和内存64x64 以上需谨慎测试

运行测试模式时,建议打开帧率显示,通常游戏设置里都有“显示 FPS”选项。如果地图运行时 FPS 低于 30,优先减少同屏怪物数量,而不是降低画质,因为塔防游戏的性能瓶颈往往在单位数量,而不是贴图分辨率。

7.3 如何降低地图负载

  • 减少重复装饰物,改用大面积地面纹理平铺。
  • 把多个波次的怪物合并成更大的刷新组,但降低刷新频率。
  • 长直线路线改为适度弯曲,避免寻路计算频繁转向。
  • 优先使用编辑器自带塔模型,不用外部高模。
  • 发布前在不同配置机器上测试,避免只在自己的高配电脑上验证。

8. 常见问题与排查方法

8.1 编辑器入口找不到

问题现象可能原因排查方式解决方案
主菜单没有编辑器按钮编辑器组件未安装查看 DLC/组件列表安装或启用编辑器模块
自定义游戏设置里没有编辑选项版本太旧检查游戏版本和更新日志更新到最新版本
编辑器图标灰色无法点击正在下载资源包查看下载队列等待下载完成后重进

8.2 编辑器加载失败或闪退

问题现象可能原因排查方式解决方案
启动编辑器后黑屏显卡着色器未缓存查看日志报错更新显卡驱动或验证游戏文件完整性
编辑器闪退地图资源损坏检查 Logs 目录删除最近添加的外部素材再试
存盘时程序崩溃存档目录写权限不足查看存档目录更换路径或以管理员身份运行启动器

8.3 地图设计问题

问题现象可能原因排查方式解决方案
敌人不走自定义路线路径节点未连成完整折线检查出生点到终点是否首尾闭合重建路径节点
敌人走到一半卡住装饰物阻塞可通行层进入测试模式观察阻挡位置删除或移动阻塞物
塔位放置后游戏内不可见塔位与地形层不匹配检查塔位属性切换到可建造层重新放置
波次一直不刷新波次触发器未启用检查波次编辑面板设置波次触发间隔或手动触发条件
游戏内地图加载失败导出文件缺失缩略图或配置检查地图文件夹重新保存并导出

8.4 性能问题

问题现象可能原因排查方式解决方案
编辑时拖动画布卡顿地形笔刷过大或装饰物过多打开性能监视器降低笔刷大小,删减装饰物
测试模式 FPS 低单波怪物数量过多观察 FPS 变化降低单波数量,分散刷新
内存占用持续升高多次保存导致缓存堆积重启编辑器看是否回落定期重启编辑器,清理临时缓存

9. 最佳实践与使用建议

9.1 从模板开始,不空建

第一次作图不要从空白画布开始。先复制官方的简单塔防模板,然后把它的路线、塔位、波次逐一改成自己的设计。这样做的好处很明显:模板里已经有一套经过验证的路径和数值参数,改起来比从零搭建更容易定位问题。

9.2 保持“最小可运行”状态

建议每完成一个小功能就保存并测试一次。比如刚画完路径,就立刻进入测试模式确认敌人能走通;刚配完第一波,就跑一次确认金币和塔价格合理。不要等全部做完再测,否则问题叠加之后很难定位。

9.3 地图备份与版本管理

地图文件体积通常不大,建议每次大改动后手动复制一份副本:

MyFirstTD_v01_20250101 MyFirstTD_v02_20250102

如果你熟悉 Git,也可以把地图文件夹纳入版本管理,但要注意地图可能包含二进制文件,Git 对二进制文件只做整体版本存储,不能做行级 diff。更有效的做法是定期导出 JSON 配置保存,这样至少数值参数有可观察的变更记录。

9.4 难度曲线设计参考

一张 20 波塔防地图,建议按三个阶段设计:

阶段波次设计目标
前 5 波1-5让玩家熟悉塔位和敌人路线,积累初始经济
中期6-12引入精英怪、甲单位、飞行单位,考验塔类型搭配
后期13-20大数量混合冲锋,要求玩家已经搭建完整火力体系

每一波的强度提升不要超过上一波的 20%。如果某两波之间的敌人总血量差距过大,新手会明显感觉到“突然打不动”,这种断裂感可以通过调整数量、间隔和类型来平滑。

9.5 社区发布与合规检查

发布前检查清单:

  • 地图名称和描述是否包含他人商标或未经授权 IP。
  • 缩略图是否清晰,不包含与内容不符的诱导图。
  • 所有外部素材是否确认来源和授权。
  • 是否在测试模式下完整通关至少一次。
  • 是否标注适合玩家人数和难度。

社区发布本质上属于 UGC 内容,你要对自己的地图负责。素材抄袭、冒用 IP、隐藏恶意脚本这类行为,不仅会导致下架,还可能引发法律风险。

9.6 内容扩展方向

基础塔防地图跑通之后,可以尝试扩展:

  • 多出入口设计,让玩家需要分散火力。
  • 路线升级机制,玩家可以花费金币改变敌人绕行路线。
  • 塔技能系统,把塔升级到特定等级后解锁主动技能。
  • 波次随机机制,每次游玩敌人顺序不完全一致,增加重玩性。
  • 无尽模式,波次循环生成,测试玩家 Build 上限。

这些扩展都要回到编辑器里去验证,每次只加一个变量,不要一次性把所有新机制都堆进去。

10. 总结与下一步

塔防战争重制版编辑器值得花时间上手,因为它把塔防地图最核心的三件事——路径、波次、经济——都做成了可视化操作。你不需要写代码就能做出一个可运行、可分享、可反复调整的塔防关卡。

拿到编辑器后,第一个应该验证的不是做多复杂的图,而是先把空地图保存、导出、在自定义游戏里加载一遍。这个流程能帮你确认环境是否完整、地图文件是否正确生成,也是后续所有迭代的基础。最容易踩的坑也在这里:很多人把地图做得很漂亮,结果保存导出环节出了问题,前面全白做。

后续可以继续研究的方向包括:如何通过配置文件做多难度版本、如何设计多路线地图、如何在社区建立自己的地图系列。把这些都跑通之后,你会发现编辑器不只是“改图工具”,它其实是一个完整的关卡设计入门平台,能帮你建立从想法到可玩内容的最小闭环。

如果这篇文章对你有用,建议收藏备用。你也可以在实际编辑时对照文中的排查表快速定位问题,先做一张小图验证流程,再逐步做完整的 20 波地图。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/3 1:47:53

2026前端零基础学习路线:HTML+CSS+JS+Vue入门到精通全套教程

做前端入门这件事,最缺的往往不是资源,而是一条能把所有知识点串起来的主线。HTML、CSS、JS、Vue,每一块单拿出来都不算难,但对于零基础的人来说,最容易卡住的地方是:不知道先学什么、学到什么程度算会、学…

作者头像 李华
网站建设 2026/9/3 1:44:32

降AI怎么避坑?2026年一篇搞懂底层逻辑

现在写论文谁没靠AI搭过框架?效率确实翻倍,但那股子生硬的“机器腔”真的闹心——好多同学因为这被导师狠批,论文连初审都过不去!我踩过坑后整理了一套亲测有效的思路和工具,帮你把AI生成的内容改得跟纯人工手写的一模…

作者头像 李华
网站建设 2026/9/3 1:44:10

MATLAB GUI实现比例导引三自由度弹道仿真:从原理到可视化实战

简介:本资源是一套面向导弹制导与飞行控制领域初学者及工程实践者的MATLAB仿真教学工具,聚焦比例导引律在三自由度弹道建模中的实现与可视化。它解决了理论导引律难以直观理解、动力学方程求解复杂、参数调节缺乏交互反馈等学习痛点,适用于自…

作者头像 李华
网站建设 2026/9/3 1:43:08

Python决策树实战:构建可解释的电影票房预测系统

简介:本资源是一套面向高校计算机、电子信息及应用数学等专业学生的毕业设计级Python项目,聚焦于利用决策树算法实现电影票房预测任务,适用于课程设计、学期项目与毕业论文参考。压缩包共62个文件,含16个核心Python源码&#xff0…

作者头像 李华
网站建设 2026/9/3 1:40:49

Hermes v0.20 新手快速上手指南:环境配置、安装部署与 Skill 实践

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

作者头像 李华
网站建设 2026/9/3 1:33:53

Maya 2026 安装部署全攻略:从系统准备到功能验证

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

作者头像 李华