วิธีเขียนรายการภายในตาราง markdown


201

หนึ่งสามารถสร้างรายการ (สัญลักษณ์แสดงหัวข้อย่อยลำดับเลขหรือไม่) ภายในตาราง markdown

ตารางมีลักษณะดังนี้:

| Tables        | Are           | Cool  |
| ------------- |:-------------:| -----:|
| col 3 is      | right-aligned | $1600 |
| col 2 is      | centered      |   $12 |
| zebra stripes | are neat      |    $1 |

รายการมีลักษณะดังนี้:

* one
* two
* three

ฉันจะรวมมันเข้าด้วยกันได้ไหม?

คำตอบ:


254

ใช่คุณสามารถรวมพวกเขาโดยใช้ HTML เมื่อฉันสร้างตาราง.mdไฟล์จาก Github ฉันมักจะใช้โค้ด HTML แทนการมาร์คดาวน์

Github Flavoured Markdownรองรับ HTML พื้นฐาน.mdไฟล์ ดังนั้นนี่คือคำตอบ:

Markdown ผสมกับ HTML:

| Tables        | Are           | Cool  |
| ------------- |:-------------:| -----:|
| col 3 is      | right-aligned | $1600 |
| col 2 is      | centered      |   $12 |
| zebra stripes | are neat      |    $1 |
| <ul><li>item1</li><li>item2</li></ul>| See the list | from the first column|

หรือ HTML บริสุทธิ์:

<table>
  <tbody>
    <tr>
      <th>Tables</th>
      <th align="center">Are</th>
      <th align="right">Cool</th>
    </tr>
    <tr>
      <td>col 3 is</td>
      <td align="center">right-aligned</td>
      <td align="right">$1600</td>
    </tr>
    <tr>
      <td>col 2 is</td>
      <td align="center">centered</td>
      <td align="right">$12</td>
    </tr>
    <tr>
      <td>zebra stripes</td>
      <td align="center">are neat</td>
      <td align="right">$1</td>
    </tr>
    <tr>
      <td>
        <ul>
          <li>item1</li>
          <li>item2</li>
        </ul>
      </td>
      <td align="center">See the list</td>
      <td align="right">from the first column</td>
    </tr>
  </tbody>
</table>

นี่คือลักษณะของ Github:


1
มันยอดเยี่ยม แต่มีวิธีการจัดรูปแบบรายการด้วยหรือไม่? ลบสัญลักษณ์แสดงหัวข้อย่อยระยะขอบ ฯลฯ ? ตัวอย่างเช่น Github ดูเหมือนจะไม่ยอมรับstyle="list-style: none"แท็กในulองค์ประกอบ
Trebor Rude

@TreborRude ไม่เพราะ Markdown ไม่ใช่ HTML จริงๆ แต่ถ้าคุณใช้ไลบรารี (เช่นmarked) คุณอาจมีฟีเจอร์นี้ (เพื่อรวม HTML กับ markdown)
IonicăBizău

ไม่เป็นไรฉันพบว่า<span>แท็กที่มีแท็กฝังตัว<br/>ทำสิ่งที่ฉันพยายามทำกับรายการสไตล์
Trebor Rude

@TreborRude แน่นอนคุณยังสามารถมีเซลล์หลายบรรทัดได้ อาจยอมรับ<p>แท็กได้เช่นกัน
IonicăBizău

ฉันยินดีที่จะยืนยันว่าอันแรก (แบบฝัง<ul><li>foo</li></ul>) ทำงานบน Bitbucket Server ด้วย
nwinkler

91

หากคุณต้องการรายการไม่มีสัญลักษณ์แสดงหัวข้อย่อย (หรือการใช้งานที่ไม่ได้มาตรฐานอื่น ๆ ) หรือมากกว่าบรรทัดในการใช้เซลล์ <br />

| Event         | Platform      | Description |
| ------------- |-----------| -----:|
| `message_received`| `facebook-messenger`<br/>`skype`|

2
อาจเป็นเพราะสามปีที่แล้วเป็นคำตอบที่สมเหตุสมผลหรือไม่ ฉันเห็นด้วยกับคุณว่านี่เป็นคำตอบที่ดีกว่าในวันนี้
วิลเลียมแดเนียล

14
นี่คือคำตอบของNewline ในตาราง markdown หรือไม่ ไม่ใช่คำถามนี้เกี่ยวกับรายการ
Bergi

1
@Bergi ฉันได้ติดตามข้อเสนอแนะของคุณแล้ว ;) การค้นหาของ google ทำให้ฉันมีคำถามนี้และนี่คือทางออกที่ฉันต้องการ ฉันคิดว่ามันน่าอยู่ (เช่นรายการที่ไม่มีสัญลักษณ์แสดงหัวข้อย่อย) ดังนั้นฉันจึงเก็บมันไว้ที่นี่
Amio.io

3
คุณสามารถเพิ่มกระสุนด้วยเอนทิตี HTML: & bull; facebook-messenger<br/> และวัว; skype
shawnhcorey

markdown lint ทำเครื่องหมายว่านี่เป็นhtml แบบอินไลน์
andrei.ciprian

48

ไม่ใช่ที่ฉันรู้เพราะการอ้างอิงมาร์คอัปทั้งหมดที่ฉันรับรู้เช่นเดียวกับที่กล่าวถึง:

เนื้อหาของเซลล์จะต้องอยู่ในหนึ่งบรรทัดเท่านั้น

คุณสามารถลองใช้กับตัวสร้างตาราง Markdown (ตัวอย่างที่มีลักษณะเหมือนที่คุณพูดถึงในคำถามของคุณดังนั้นคุณอาจจะทราบแล้ว)

Pandoc

หากคุณกำลังใช้markdown ของ Pandoc (ซึ่งขยาย ไวยากรณ์ของ markdown ของ John Gruberซึ่งเป็นพื้นฐานของGitHub Flavoured Markdown ) คุณสามารถใช้grid_tables:

+---------------+---------------+--------------------+
| Fruit         | Price         | Advantages         |
+===============+===============+====================+
| Bananas       | $1.34         | - built-in wrapper |
|               |               | - bright color     |
+---------------+---------------+--------------------+
| Oranges       | $2.10         | - cures scurvy     |
|               |               | - tasty            |
+---------------+---------------+--------------------+

multiline_tablesหรือ

-------------------------------------------------------------
 Centered   Default           Right Left
  Header    Aligned         Aligned Aligned
----------- ------- --------------- -------------------------
   First    row                12.0 Example of a row that
                                    spans multiple lines.

  Second    row                 5.0 Here's another one. Note
                                    the blank line between
                                    rows.
-------------------------------------------------------------

1
Markdown Tables Generator นั้นผิดเพราะยอมรับบรรทัดใหม่ที่ไม่ได้รับการยอมรับ แต่ขอบคุณสำหรับข้อมูลที่มีค่า
Gabriel Petrovay

@ GabrielPetrovay เครื่องกำเนิดตาราง Markdown เป็นบริการที่ค่อนข้างใหม่ฉันไม่แปลกใจ;) แต่เกี่ยวกับ "GitHub Flavoured Markdown" คำตอบของฉันย่อมาจาก
VonC

1
ฉันมักจะยอมรับคำตอบของคุณ แต่ฉันรออีก 1-2 วันอาจมีบางคนโพสต์แฮ็ค (ถ้าคำตอบตอบรับแล้วจะไม่มีใครมองยกเว้นคนอื่นที่มีปัญหาเดียวกัน)
Gabriel Petrovay

1
@GabrielPetrovay ฉันเห็นด้วย คุณสามารถติดต่อฝ่ายสนับสนุนของ GitHub และดูสิ่งที่พวกเขาพูดเกี่ยวกับมัน (และจากนั้นอัปเดตคำตอบของฉันหรือโพสต์ของคุณเอง)
VonC

1
@ イオニカビザウเห็นได้ชัดว่าฉันไม่ได้พูดถึง HTML ด้วย HTML คุณสามารถสร้างคุณลักษณะการมาร์กอัปใหม่ได้ดังนั้นจึงไม่ใช่โซลูชันที่ถูกต้อง คำถามเกี่ยวกับ markdown ไม่ใช่ HTML
VonC

3

อีกวิธีหนึ่งที่ฉันเพิ่งนำไปใช้คือการใช้ปลั๊กอิน div-tableกับpanflute panflute

สิ่งนี้สร้างตารางจากชุดของ div fenced (มาตรฐานในการใช้pandocของ markdown) ในโครงร่างที่คล้ายกับ html:

---
panflute-filters: [div-table]
panflute-path: 'panflute/docs/source'
---

::::: {.divtable}
:::: {.tcaption}
a caption here (optional), only the first paragraph is used.
::::
:::: {.thead}
[Header 1]{width=0.4 align=center}
[Header 2]{width=0.6 align=default}
::::
:::: {.trow}
::: {.tcell}

1. any
2. normal markdown
3. can go in a cell

:::
::: {.tcell}
![](https://pixabay.com/get/e832b60e2cf7043ed1584d05fb0938c9bd22ffd41cb2144894f9c57aae/bird-1771435_1280.png?attachment){width=50%}

some text
:::
::::
:::: {.trow bypara=true}
If bypara=true

Then each paragraph will be treated as a separate column
::::
any text outside a div will be ignored
:::::

ดูเหมือนกับ:

ป้อนคำอธิบายรูปภาพที่นี่


2

หากคุณใช้วิธีการ HTML:

อย่าเพิ่มบรรทัดว่าง

แบบนี้:

<table>
    <tbody>

        <tr>
            <td>1</td>
            <td>2</td>
        </tr>

        <tr>
            <td>1</td>
            <td>2</td>
        </tr>

    </tbody>
</table>

มาร์กอัปจะแตก

ลบบรรทัดว่าง:

<table>
    <tbody>
        <tr>
            <td>1</td>
            <td>2</td>
        </tr>
        <tr>
            <td>1</td>
            <td>2</td>
        </tr>
    </tbody>
</table>

0

อีกโซลูชันหนึ่งคุณสามารถเพิ่ม<br>แท็กในตารางของคุณ

    |Method name| Behavior |
    |--|--|
    | OnAwakeLogicController(); | Its called when MainLogicController is loaded into the memory , its also hold the following actions :- <br> 1. Checking Audio Settings <br>2. Initializing Level Controller|

ป้อนคำอธิบายรูปภาพที่นี่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.