如果
<br>
或
<br />
无法起作用,那么您可能无法实现此功能。
不幸的是,Bitbucket关于
table支持的文档非常稀少,只包含以下示例:
| Day | Meal | Price |
| --------|---------|-------|
| Monday | pasta | $6 |
| Tuesday | chicken | $8 |
然而,这个语法看起来像是由
PHP Markdown Extra首先引入的相当普遍的表格语法,并且后来被
GitHub、
MultiMarkdown和其他人广泛使用。
PHP Markdown Extra的规则说明:
You can apply span-level formatting to the content of each cell using regular Markdown syntax:
| Function name | Description |
|
| `help()` | Display the help window. |
| `destroy()` | **Destroy your computer!** |
GitHub的规范明确指出:
块级元素不能插入表格中。
而MultiMarkdown的规则说明:
单元格内容必须在同一行上。
事实上,注意到语法没有提供任何定义一行何时结束和另一行开始的方法(与标题行不同,标题行包括一条线将其与表格主体分开)。由于您无法定义行之间的分隔,因此它能够工作的唯一方式是每行都是自己的行。因此,一行不能包含多行文本。
因此,表格单元格中的任何文本都必须是内联文本,可以表示为单行(因此Markdown标准中两个空格后跟换行符不起作用;项目符号也不起作用,因为它们将是块级列表元素)。当然,原始HTML
标记是内联文本,并且可以作为在表格单元格中插入换行符的一种方法。但是,某些Markdown实现禁止所有原始HTML作为安全措施。如果您正在使用这样的实现(Bitbucket似乎在使用),则根本不可能在表格单元格中包含换行符。
我意识到有些人会觉得上述内容令人沮丧和限制。然而,值得注意的是MultiMarkdown文档中关于表格的以下建议:
MultiMarkdown表格支持旨在处理大多数用户的大多数表格;它并不涵盖所有用户的所有表格。如果您需要复杂的表格,则需要手动创建或使用专门为您的输出格式设计的工具。但是,如果您发现MultiMarkdown表格过于受限,则应考虑是否表格确实是最佳方法。
这个有趣的建议是,如果您无法使用相当有限的表格语法做到想要的效果,可以考虑使用其他东西来替代表格。然而,如果表格确实是正确的工具,那么您可能需要手动创建它。作为提醒,
原始规则如下:
Markdown并不是HTML的替代品,也离替代品相差甚远。它的语法非常简单,只对应了HTML标签的一个很小的子集。Markdown的目标不是创造一种让插入HTML标签更容易的语法。在我看来,插入HTML标签已经很容易了。Markdown的目标是使撰写、阅读和编辑散文更加容易。HTML是一种发布格式;而Markdown是一种编写格式。因此,Markdown的格式语法只涉及可以用纯文本传达的问题。
对于任何未被Markdown语法覆盖的标记,您只需使用HTML本身。没有必要用任何前缀或定界符来表示您正在从Markdown切换到HTML;您只需使用标签即可。
因此,手动创建表格需要使用整个表格的原始HTML。当然,对于那些禁止所有原始HTML的实现,您将无法使用该选项。因此,您要么考虑非表格解决方案,要么想办法在单元格内没有任何换行符的情况下格式化表格。
|1st line. <br>2nd line.<br/> 3rd line|
可以在 GitHub Markdown 中使用,但必须在同一行上。 - Brian Cragun<br/>
也可以正常工作。 - user5395338