【问题标题】:How to do cell vertical alignment in markdown/pandoc table?如何在 markdown/pandoc 表中进行单元格垂直对齐?
【发布时间】:2014-12-01 02:32:56
【问题描述】:

有没有办法在 markdown/pandoc 中指定表格单元格内容的垂直对齐方式?

详情:
默认行为是居中对齐,我希望单元格内容与单元格顶部对齐。默认行为示例:

|           |               |
|-----------|---------------|
| Something | This is a very long line that breaks into two. This is a very long line that breaks into two.This is a very long line that breaks into two.This is a very long line that breaks into two.|

上例中左侧单元格的内容将垂直居中。

【问题讨论】:

  • 我在Something之后多次插入<br>,直到它出现在单元格的顶部。如果你想让它进入底部,我假设相同的 hack before 起作用。

标签: markdown pandoc


【解决方案1】:

使用 多行表 语法(仅 Pandoc 支持——它是 Markdown 的 Pandoc 特定扩展):

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

   Table: Here's the caption. It, too, may span
   multiple lines.

多行表格允许标题和表格行跨越多行文本(但不支持跨越表格多列或多行的单元格)。

这些工作类似于简单的表格,但有以下区别:

  • 它们必须以一行破折号开头,在标题文本之前(除非标题被省略)。

  • 它们必须以一行破折号结尾,然后是一个空行。

  • 行必须用空行分隔。

在多行表中,表解析器会注意列的宽度,编写器会尝试在输出中重现这些相对宽度。因此,如果您发现输出中的某一列太窄,请尝试在降价源中将其加宽。

【讨论】:

  • 谢谢库尔特。我想重申您在我的other question 上的回答,此解决方案不一定适用于 HTML。
  • 是的,它在 HTML 中不起作用。这里是从不完整的 LaTeX tex.stackexchange.com/a/247003/13173 进行的 pandoc 转换,如果能够拥有相对的表格格式会很好。目前,表格很窄,需要很多页。 @Kurt有什么方法可以通过HTML获得相对表格大小,即增加水平宽度?我认为水平宽度的增加不会像这里那样起作用stackoverflow.com/q/27219629/54964