Jika saya memiliki yang pertama seperti ini:

+--------------------------------+
| Table H1                       |
+-------------+------------------+
| Table H2a   | Table H2b        |
+=============+==================+
| a1          | b1               |
+-------------+------------------+
| a2          | b2               |
+-------------+------------------+
| a3          | b3               |
+-------------+------------------+

Dan mengubahnya menjadi html seperti ini:

python -u %PYTHONPATH3%\\Scripts\\rst2html5.py input.rst output.html

Tabel html yang dihasilkan terlihat seperti ini:

<body>
    <div class="document"><blockquote><table>
        <colgroup>
            <col style="width: 42%" />
            <col style="width: 58%" />
        </colgroup>
        <thead>
            <tr><th class="head" colspan="2"><p>Table H1</p></th>
            </tr>
            <tr><th class="head"><p>Table H2a</p></th>
            <th class="head"><p>Table H2b</p></th>
            </tr>
        </thead>
        <tbody>
            <tr><td><p>a1</p></td>
            <td><p>b1</p></td>
            </tr>
            <tr><td><p>a2</p></td>
            <td><p>b2</p></td>
            </tr>
            <tr><td><p>a3</p></td>
            <td><p>b3</p></td>
            </tr>
        </tbody>
    </table></blockquote></div>
</body>

Isi sel, seperti yang Anda lihat, ditempatkan di dalam tag paragraf (di dalam <p></p>), sehingga diformat sebagai paragraf dan tidak seperti tabel saya yang dikonfigurasi dalam file css (mis. jika saya menambahkan baris pertama indentasi ke paragraf teks di css, konten sel juga menerima lekukan itu)

Apakah ada cara untuk menghasilkan tabel html tanpa paragraf di dalam sel (menggunakan docutils rst2html)?

Catatan:

  • Saya sebenarnya mengonversi file pertama yang sangat panjang, jadi membuatnya berfungsi dengan baik daripada meretas/mengganti html harus lebih disukai.
  • Hal yang sama terjadi dengan item daftar saya, yang dibuat di dalam tag <p> (mis. <li><p>Something</p></li>).
0
Lucas Siqueira 3 Januari 2018, 19:56

1 menjawab

Jawaban Terbaik

Anda dapat menggunakan CSS khusus untuk mengganti spasi visual dari tag <p>. Sesuatu seperti ini.

td > p, li > p {
    margin: 0;
}

Saya pikir itu aneh, bagaimanapun, bahwa output Anda menghasilkan tag <p> dalam tabel, karena bukan itu yang dilakukan docutils, dengan asumsi itulah yang menjadi dasar rst2html5. Saya sarankan Anda menghubungi penulis perpustakaan itu.

Edit: Ini adalah hasil HTML saya menggunakan Sphinx dan sampel sisanya:

<table border="1" class="docutils">
<colgroup>
<col width="42%">
<col width="58%">
</colgroup>
<thead valign="bottom">
<tr class="row-odd"><th class="head" colspan="2">Table H1</th>
</tr>
<tr class="row-even"><th class="head">Table H2a</th>
<th class="head">Table H2b</th>
</tr>
</thead>
<tbody valign="top">
<tr class="row-odd"><td>a1</td>
<td>b1</td>
</tr>
<tr class="row-even"><td>a2</td>
<td>b2</td>
</tr>
<tr class="row-odd"><td>a3</td>
<td>b3</td>
</tr>
</tbody>
</table>
1
Steve Piercy 4 Januari 2018, 02:29