有可能在Markdown中创建一个没有标题的表吗?

HTML看起来是这样的:

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

当前回答

大多数Markdown解析器不支持没有标题的表。这意味着头的分隔线是强制的。

不支持无头表的解析器

multimarkdown Maruku: Ruby中流行的实现 俗语:“所有表必须以一行或多行标题开头” PHP Markdown额外“第二行包含一个强制性的分隔线之间的标题和内容” RDiscount使用PHP Markdown Extra语法。 GitHub调味Markdown Parsedown: PHP中的解析器(例如在Laravel电子邮件中使用)

支持无头表的解析器。

Kramdown: Ruby中的解析器 MultiMarkdown: Perl CPAN模块。 MultiMarkdown: Windows应用程序。 ParseDown Extra: PHP中的解析器。 Pandoc:用Haskell编写的命令行的文档转换器(通过simple_tables和multiline_tables扩展支持无头表) Flexmark: Java中的解析器。

CSS解决方案

如果你能够改变HTML输出的CSS,你可以利用:empty伪类来隐藏一个空头,使它看起来根本没有头。

其他回答

$ 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>

大多数Markdown解析器不支持没有标题的表。这意味着头的分隔线是强制的。

不支持无头表的解析器

multimarkdown Maruku: Ruby中流行的实现 俗语:“所有表必须以一行或多行标题开头” PHP Markdown额外“第二行包含一个强制性的分隔线之间的标题和内容” RDiscount使用PHP Markdown Extra语法。 GitHub调味Markdown Parsedown: PHP中的解析器(例如在Laravel电子邮件中使用)

支持无头表的解析器。

Kramdown: Ruby中的解析器 MultiMarkdown: Perl CPAN模块。 MultiMarkdown: Windows应用程序。 ParseDown Extra: PHP中的解析器。 Pandoc:用Haskell编写的命令行的文档转换器(通过simple_tables和multiline_tables扩展支持无头表) Flexmark: Java中的解析器。

CSS解决方案

如果你能够改变HTML输出的CSS,你可以利用:empty伪类来隐藏一个空头,使它看起来根本没有头。

如果你不介意留空浪费一行,可以考虑下面的hack(这是一个hack,只有当你不喜欢添加任何额外的插件时才使用它)。

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

要查看上面的效果,请复制上面的内容并访问https://stackedit.io/app

它与GitLab/GitHub的Markdown实现一起工作。

我在第一列标题中使用<span>:

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

它创建了一个带边框的空标题,但大小是原来的1/2。

至少对于GitHub flavated Markdown,你可以通过使用常规的__或**格式使所有非标题行条目加粗来产生错觉:

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