Sphinx 和 RST:如何将标题移动到 table 下方,就像在数字和其他聪明的东西中一样?
Sphinx and RST: How to move caption BELOW table, just like in figures and other clever things?
我创建了一个网格 table,其中包含以下指令:
..table:: *Table 1: Power Connector*
:align: center
这是结果:
最大的问题是如何将标题 Table 1:电源连接器 移动到 table 下方,有什么技巧吗?我确定有,只是请不要深入研究 Sphinx 的源代码,给我一些简单的角色或其他可以做到的角色(CSS 或其他),理想情况下,built-in 角色:align:
作为一款流行的文档软件,Sphinx确实缺少很多进阶的讲解。在对 Sphinx 本身的 python 源代码进行一系列 hack 之前,我几乎没有找到 :align:
指令。拜托,Sphinx只是学习的借口吗python?
table
指令是由docutils定义的,所以即使你需要查看源代码,也应该去docutils,而不是sphinx。
像
这样的片段
.. table:: *Table 1: Power Connector*
:align: left
+-----+-----+-----+
| t | x | y |
+=====+=====+=====+
| | | |
+-----+-----+-----+
| | | |
+-----+-----+-----+
转化为HTML5,
<table class="docutils align-left" id="id1">
<caption><span class="caption-text"><em>Table 1: Power Connector</em></span><a class="headerlink" href="#id1" title="Permalink to this table">¶</a></caption>
<colgroup>
<col style="width: 33%" />
<col style="width: 33%" />
<col style="width: 33%" />
</colgroup>
<thead>
<tr class="row-odd"><th class="head"><p>t</p></th>
<th class="head"><p>x</p></th>
<th class="head"><p>y</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
因此,由于 HTML 5 默认样式,标题显示在顶部。
要覆盖它,您需要添加一个 CSS 文件并使用 caption-side
将其移至底部,
.docutils caption {
caption-side: bottom;
}
如果您想知道如何使用自定义 CSS 文件,可以阅读参考资料。
参考
我创建了一个网格 table,其中包含以下指令:
..table:: *Table 1: Power Connector*
:align: center
这是结果:
最大的问题是如何将标题 Table 1:电源连接器 移动到 table 下方,有什么技巧吗?我确定有,只是请不要深入研究 Sphinx 的源代码,给我一些简单的角色或其他可以做到的角色(CSS 或其他),理想情况下,built-in 角色:align:
作为一款流行的文档软件,Sphinx确实缺少很多进阶的讲解。在对 Sphinx 本身的 python 源代码进行一系列 hack 之前,我几乎没有找到 :align:
指令。拜托,Sphinx只是学习的借口吗python?
table
指令是由docutils定义的,所以即使你需要查看源代码,也应该去docutils,而不是sphinx。
像
这样的片段.. table:: *Table 1: Power Connector*
:align: left
+-----+-----+-----+
| t | x | y |
+=====+=====+=====+
| | | |
+-----+-----+-----+
| | | |
+-----+-----+-----+
转化为HTML5,
<table class="docutils align-left" id="id1">
<caption><span class="caption-text"><em>Table 1: Power Connector</em></span><a class="headerlink" href="#id1" title="Permalink to this table">¶</a></caption>
<colgroup>
<col style="width: 33%" />
<col style="width: 33%" />
<col style="width: 33%" />
</colgroup>
<thead>
<tr class="row-odd"><th class="head"><p>t</p></th>
<th class="head"><p>x</p></th>
<th class="head"><p>y</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
因此,由于 HTML 5 默认样式,标题显示在顶部。
要覆盖它,您需要添加一个 CSS 文件并使用 caption-side
将其移至底部,
.docutils caption {
caption-side: bottom;
}
如果您想知道如何使用自定义 CSS 文件,可以阅读参考资料。