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

如何在Bookdown的HTML输出中实现按「章节.序号」编号的自定义定理环境?

自定义Bookdown HTML定理环境:按「章节.出现次数」编号的问题

需求

我希望在Bookdown的HTML输出中,实现一个按「章节编号.本章节内出现次数」格式编号的自定义定理环境(例如名为convention的环境)。

已完成的配置

1. LaTeX配置(preamble.tex)

为LaTeX输出定义环境:

\newtheorem{convention}{Convention}[chapter]

2. CSS样式配置(style.css)

为HTML输出添加样式:

.convention {
    position: relative;
    font-style: italic;
}
.convention p{
    display: inline;
}

.convention:before {
  counter-increment: convention;
  content: "Convention: " "." counter(convention) " (" attr(name) ").";
  font-weight: bold;
  font-style: normal;
}
div.convention {
  font-style: italic;
}

3. 环境使用示例(01-vectors-and-matrices.Rmd)

在章节文件中调用自定义环境:

::: {.convention #something name="Something" data-latex=""}
Something.
:::

存在的问题

LaTeX输出完全符合预期,但HTML(GitBook)输出有两个问题:

  • CSS中的counter(convention)无法实现按章节统计该环境的出现次数,当前是全局累计计数;
  • 不知道如何在CSS中获取并引用当前章节的编号,无法生成「章节.次数」的格式。

参考需求

我想参考Bookdown内置的标准定理环境(如definition、corollary、remark)的样式实现逻辑,但找不到对应的CSS定义位置。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 14:25:19