You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oxygen XML Editor中DITA转HTML分页:如何让章节首h1与h2同页?

解决方案

可以通过CSS选择器精准区分不同位置的h2元素,实现仅让章节内非开头的h2从新页面开始:

方案一:针对直接紧跟h1的h2取消分页

适合章节结构为h1后直接紧跟第一个h2的场景,保留原有规则的同时,覆盖开头h2的分页设置:

/* 所有h2默认设置分页 */
h2 {
  page-break-before: always;
}

/* 直接跟随在h1之后的h2,取消分页 */
h1 + h2 {
  page-break-before: auto;
}

方案二:针对章节内非第一个h2设置分页

如果章节内h1之后可能存在其他内容(比如段落、图片)再出现h2,可通过父容器选择器定位章节内除第一个h2外的所有h2:
假设Oxygen输出的章节容器类名为.chapter(可根据实际生成的HTML结构调整选择器):

/* 章节内的第一个h2不设置分页 */
.chapter h2:first-of-type {
  page-break-before: auto;
}

/* 章节内除第一个外的所有h2,强制分页 */
.chapter h2:not(:first-of-type) {
  page-break-before: always;
}

注意事项

  • 需根据Oxygen实际生成的HTML结构调整选择器,比如章节容器可能是div[class*="chapter"]或其他标签/类名,可通过浏览器开发者工具查看生成的HTML元素结构确认。
  • 上述选择器均属于CSS2.1及以上标准,Oxygen的CSS处理器完全支持。

内容的提问来源于stack exchange,提问作者PJPorter

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 19:24:10