Buat tabel tanpa header di Markdown


147

Apakah mungkin untuk membuat tabel tanpa header di penurunan harga?

HTMLnya akan terlihat seperti ini:

<table>
<tr>
    <td>Key 1</td>
    <td>Value 1</td>
</tr>
<tr>
    <td>Key 2</td>
    <td>Value 2</td>
</tr>
</table>

Jawaban:


94

Kebanyakan parser penurunan harga tidak mendukung tabel tanpa header. Itu berarti garis pemisah untuk tajuk adalah wajib.

Parser yang tidak mendukung tabel tanpa header

Parser yang melakukan tabel dukungan tanpa header.

Solusi CSS

Jika Anda dapat mengubah CSS dari output HTML, Anda dapat memanfaatkan :emptykelas semu untuk menyembunyikan header kosong dan membuatnya terlihat seperti tidak ada header sama sekali.


30
Parser Github dapat ditambahkan ke daftar yang tidak mendukungnya.
Quantum7


84

Jika Anda tidak keberatan membuang-buang baris dengan membiarkannya kosong, pertimbangkan peretasan berikut (ini adalah peretasan, dan gunakan ini hanya jika Anda tidak suka menambahkan plugin tambahan).

| | | |
|-|-|-|
|__Bold Key__| Value1 |
| Normal Key | Value2 |

Untuk melihat bagaimana tampilan di atas, salin di atas dan kunjungi https://stackedit.io/editor

Ini bekerja dengan GitLab / GitHub 's penurunan harga implementasi.


2
Implementasi apa yang berhasil? Itu tidak bekerja dengan Perl's Text :: MultiMarkdown tapi saya pikir itu mungkin bekerja dengan beberapa implementasi PHP MultiMarkdown.
RedGrittyBrick

2
Ini bekerja dengan implementasi penurunan harga gitlab / github. Saya tidak yakin tentang Perl's Text :: MultiMarkdown
Thamme Gowda

10
Ini akan membuat header tabel kosong dan baris kosong.
Gajus

Ini benar-benar berfungsi dengan baik dengan pandocpenurunan harga ke pdf.
Alex Baranowski

Terima kasih! Ini bekerja dengan penurunan harga Laravel 5.8 (multi) juga. Tidak ada header yang terlihat - hanya satu baris. Sepertinya pembatas, yang dapat dihapus menggunakan beberapa CSS di tema.
pengguna2966991

17

Saya mendapatkan ini berfungsi dengan Penurunan Harga Bitbucket dengan menggunakan tautan kosong:

[]()  | 
------|------
Row 1 | row 2

2
Juga akan meminta baris header kosong. Setidaknya hanya setengah dari tinggi garis normal. Bekerja untuk saya sebagai Hack di github juga
Londane

Retasan ini berfungsi untuk saya saat menulis dokumentasi di Insomnia. Masih membuat garis tajuk, tetapi jauh lebih pendek daripada jika saya meletakkan teks di sana. Terima kasih!
jkmartindale

Cemerlang! Saya masih melihat sedikit ruang vertikal dengan Github Markdown, tetapi ini lebih baik dari sebelumnya.
Keith Bennett

16

Solusi Universal

Sayangnya, banyak saran tidak berfungsi untuk semua pemirsa / editor Penurunan Harga, misalnya, ekstensi Chrome Penampil Penurunan Harga yang populer , tetapi mereka berfungsi dengan iA Writer .

Apa yang tampaknya berhasil di kedua program populer ini (dan mungkin berhasil untuk aplikasi khusus Anda) adalah dengan menggunakan HTML comment blocks ('<!-- -->'):

| <!-- -->    | <!-- -->    |
|-------------|-------------|
| Foo         | Bar         |

Seperti beberapa saran sebelumnya yang dinyatakan, ini menambahkan baris header kosong di penampil / editor penurunan harga Anda. Di iA Writer, secara estetika cukup kecil sehingga tidak terlalu mengganggu saya.


Ini benar-benar melemahkan tujuan penggunaan Penurunan harga, karena bila dilihat sebagai hanya teks, komentar akan dihilangkan dan kolom bahkan tidak akan sejajar lagi.
hackel

Saya pikir @hackel salah paham. Ini tidak meratakan kolom menggunakan lebar tetap. Sebaliknya, ini memberikan solusi yang bagus untuk memiliki header kolom yang valid tetapi kosong. Itu adalah solusi yang bagus dalam situasi saya. Tabel masih ditampilkan seperti yang diharapkan / diharapkan; itu hanya tidak memiliki baris header.
mdahlman

7

Menghilangkan header di atas pembagi menghasilkan tabel tanpa header setidaknya di Perl Text :: MultiMarkdown dan di FletcherPenney MultiMarkdown

|-------------|--------|
|**Name:**    |John Doe|
|**Position:**|CEO     |

Lihat permintaan fitur penurunan harga PHP


Header kosong di PHP Parsedown menghasilkan tabel dengan header kosong yang biasanya tidak terlihat (tergantung pada CSS Anda) sehingga terlihat seperti tabel tanpa header.

|     |     |
|-----|-----|
|Foo  |37   |
|Bar  |101  |

Tentang penggunaan Parsedown, sebenarnya headernya masih disini, cek saja HTML-nya. Jika Anda memiliki padding CSS di sel, Anda akan melihat sel header. Tapi saya rasa itu table th:empty { padding: 0; }akan memperbaikinya.
AymDev

7

Berikut ini bekerja dengan baik untuk saya di GitHub. Baris pertama tidak lagi dicetak tebal karena bukan tajuk:

<table align="center">
    <tr>
        <td align="center"><img src="docs/img1.png?raw=true" alt="some text"></td>
        <td align="center">Some other text</td>
        <td align="center">More text</td>
    </tr>
    <tr>
        <td align="center"><img src="docs/img2.png?raw=true" alt="some text"></td>
        <td align="center">Some other text 2</td>
        <td align="center">More text 2</td>
    </tr>
</table>

Periksa contoh tabel HTML tanpa tajuk di sini .


6
Inilah yang menurut penanya tidak mereka inginkan.
Neil Mayhew

Tabel HTML tampaknya tidak berfungsi di Bitbucket ( community.atlassian.com/t5/Bitbucket-questions/… ) - ini menampilkan HTML itu sendiri daripada merender tabel.
jsaven

7

Setidaknya untuk GitHub Flavored Markdown , Anda dapat memberikan ilusi dengan membuat semua entri baris non-header dicetak tebal dengan regular __atau **format:

|Regular | text | in header | turns bold |
|-|-|-|-|
| __So__ | __bold__ | __all__ | __table entries__ |
| __and__ | __it looks__ | __like a__ | __"headerless table"__ |

Saya mencari sesuatu yang berfungsi di GFM dan peretasan ini sangat kreatif!
Mrchief

3
$ cat foo.md
Key 1 | Value 1
Key 2 | Value 2
$ kramdown foo.md
<table>
  <tbody>
    <tr>
      <td>Key 1</td>
      <td>Value 1</td>
    </tr>
    <tr>
      <td>Key 2</td>
      <td>Value 2</td>
    </tr>
  </tbody>
</table>

Sepertinya ini tidak berfungsi dengan github.com/chjj/marked . Apakah ada referensi, di mana saya dapat mencari tahu apakah ini perilaku yang diharapkan?
adius

@AdrianSieber Saya menggunakan Kramdown, saya tidak dapat berbicara tentang yang lain.
Steven Penny

2

Anda mungkin dapat menyembunyikan judul jika Anda dapat menambahkan CSS berikut:

<style>
    th {
        display: none;
    }
</style>

Ini agak rumit dan tidak membedakan antar tabel, tetapi mungkin dilakukan untuk tugas sederhana.


Satu-satunya trik CSS yang berhasil untuk saya karena beberapa alasan (saya menggunakan VNote dengan perender Markdown-it). Tidak ada solusi yang diberikan di sini: stackoverflow.com/questions/12023771/hide-empty-cells-in-table berfungsi.
apa yang terjadi

1

Saya gunakan <span>di tajuk kolom pertama:

 <span> |
---     |    ---
Value   |  Value
Value   |  Value

Ini membuat header kosong dengan batas, tetapi dengan 1/2 ukuran.


0

Solusi @ thamme-gowda juga berfungsi untuk gambar!

| | |:----------------------------------------------------------------------------:| | ![](https://gravatar.com/avatar/4cc702785290b4934c531c56f6061e5e "Tonejito") |

Anda dapat memeriksa ini pada inti yang saya buat untuk itu . Berikut adalah render tabel hack di GitHub dan GitLab:

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.