如何让Quarto自定义axm交叉引用环境文本左对齐?
解决Quarto自定义交叉引用环境文本居中问题
问题根源
你将自定义交叉引用类型axm的kind设为float(浮动环境),Quarto默认对浮动类环境应用居中样式,导致文本自动居中;而内置def属于定理类非浮动环境,因此默认左对齐。
可行解决方案
方案1:自定义CSS全局修正
在项目中添加自定义CSS来覆盖浮动环境的居中样式:
- 在项目根目录创建
styles.css文件,写入以下内容:
/* 针对axm自定义浮动环境的内容左对齐 */ div.axm > p { text-align: left !important; }
- 在
_quarto.yml的格式配置中引用该CSS:
format: html: css: styles.css
方案2:修改交叉引用类型为非浮动定理类
如果你的公理不需要浮动特性(无需跨页浮动、与正文混排),可以将kind改为theorem,直接沿用定理类环境的左对齐样式:
修改_quarto.yml中的配置:
crossref: custom: - key: axm kind: theorem reference-prefix: Axioms type: axiom
文档中的axm环境用法保持不变,渲染后文本会自动左对齐,同时保留自定义的引用前缀。
方案3:单个环境临时设置样式
如果仅需调整某一个axm环境的对齐,可直接在环境标签中添加行内样式:
::: {#axm-real style="text-align: left;"} text of axioms listed here :::
内容的提问来源于stack exchange,提问作者dj_a
相关产品推荐
相关产品推荐

