在Sphinx中向表中添加一个类?

时间:2015-11-03 07:28:20

标签: python-sphinx restructuredtext

我在rst中有一个表,我想在使用Sphinx编译为HTML时为其添加一个类。根据{{​​3}},在表之前添加.. class::指令应该将类添加到表中,而是添加定义列表。

表格代码是:

.. class:: special

== == ==
a  b  c
1  2  3
== == ==

导致:

<dl class="class">
<dt id="special">
<em class="property">class </em><code class="descname">special</code><a class="headerlink" href="#special" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<table border="1" class="docutils">
<colgroup>
<col width="33%" />
<col width="33%" />
<col width="33%" />
</colgroup>
<tbody valign="top">
<tr class="row-odd"><td>a</td>
<td>b</td>
<td>c</td>
</tr>
<tr class="row-even"><td>1</td>
<td>2</td>
<td>3</td>
</tr>
</tbody>
</table>

我做错了什么?我正在使用Sphinx 1.3.1

2 个答案:

答案 0 :(得分:10)

Sphinx默认域是Python,它包含一个class指令,该指令以相同的名称隐藏原始Docutils指令。

要使其有效,请改用rst-class

.. rst-class:: special

== == ==
a  b  c
1  2  3
== == ==

请参阅http://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html#id2

答案 1 :(得分:4)

或者,您可以使用.. table::指令包装表并使用其:class:选项:

.. table::
   :class: special

   == == ==
   a  b  c
   1  2  3
   == == ==

查看相应的docutils文档here