单元格中的文本换行跨越多行-Sphinx ReStructuredText

时间:2018-12-13 08:30:07

标签: restructuredtext

在创建一个单元格跨越多行的表格时,我注意到文本内容不会自动换行,而是增加表格的宽度以产生水平滚动条。

例如考虑以下RST,

+-------+-----------------+
|       |                 |
+-------+-----------------+
|       | This text must  |
+-------+ wrap over to    |
|       | the next line   |
+-------+-----------------+

建造时产生

sphynx-build output

随着我增加文本的长度,表格水平增长。我应该怎么做才能包裹起来?现在,我通过用“ |”手动插入换行符来强制换行但是产生的输出看起来很糟糕。

2 个答案:

答案 0 :(得分:0)

有一个table directive with a :widths: attribute

.. table::
    :widths: 20, 80

    +-------+-----------------+
    |       |                 |
    +-------+-----------------+
    |       | This text must  |
    +-------+ wrap over to    |
    |       | the next line   |
    +-------+-----------------+

也许还可以通过自定义CSS控制列宽,但是我无法覆盖Sphinx输出中的<colgroup>标签。

答案 1 :(得分:0)

您将无法覆盖Sphinx中的colgroup标签。您可以尝试使用rst2html5 package,而不生成colgroup。另一种选择是使用CSS控制列宽:

col:nth-child(1) {
  width: 200px;
}

col:nth-child(2) {
  width: 300px;
}
<table border="1" class="docutils">
<colgroup>
<col width="29%" />
<col width="71%" />
</colgroup>
<tbody valign="top">
<tr><td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr><td>&nbsp;</td>
<td rowspan="2">This text must
wrap over to
the next line</td>
</tr>
<tr><td>&nbsp;</td>
</tr>
</tbody>
</table>