我在rST中有以下网格表。我想控制HTML输出的列宽 ,以便Field type
占据表格宽度的20%,Description
占据30%,Example
占用50%。
+-------------+-----------------+-----------------------+
|Field type |Description |Example |
+-------------+-----------------+-----------------------+
..tablularcolumns
指令没有影响,组合..table
和:width:
也没有影响。例如,以下内容没有影响。
.. tabularcolumns:: |p{2cm}|p{3cm}|p{5cm}|
以下SO链接的答案无效。
How to fix column width in reStructuredText tables?
任何建议都将得到彻底祝福。
答案 0 :(得分:2)
两个选项。
使用widths
option表格。
.. table:: This is my table
:widths: 20 30 50
+-------------+-----------------+-----------------------+
|Field type |Description |Example |
+-------------+-----------------+-----------------------+
修改主题的CSS并使用:nth-child
CSS伪选择器。
td:nth-child(1) {
width: 20%;
}
td:nth-child(2) {
width: 30%;
}
td:nth-child(3) {
width: 50%;
}
第一个选项的输出如下:
<table border="1" class="colwidths-given docutils" id="id1">
<caption><span class="caption-text">This is my table</span><a class="headerlink" href="#id1" title="Permalink to this table">¶</a></caption>
<colgroup>
<col width="20%">
<col width="30%">
<col width="50%">
</colgroup>
<tbody valign="top">
<tr class="row-odd"><td>Field type</td>
<td>Description</td>
<td>Example</td>
</tr>
</tbody>
</table>