4

我想在信息框中插入表格。例如,我有一个使用 infobox 模板 ( http://health-and-medicine.wikia.com/wiki/Template:Proteinbox ) 开发的蛋白质盒,它的 FASTA 字段太大而无法舒适地放入蛋白质盒中. 因此,我希望它是盒子内的可折叠桌子。

这是我尝试过的:

{{infobox
 | Row 1 = 
  {| class = "mw-collapsible mw-collapsed wikitable"
  |-
  | <!-- Some table content -->
  |}
}}
4

2 回答 2

3

您的问题是,您将嵌套表放在模板中。表格语法中的竖线字符 ( |) 会与模板中的竖线用法发生冲突。

解决这个问题的最常用技巧是创建一个名为 的模板Template:!,它只包含管道字符,然后当您需要在模板中放置表格、解析器函数或其他使用管道字符的东西时使用它。然后,您的表格将如下所示(每个都|替换为{{!}}):

{{{!}}
{{!}}-
{{!}} A1
{{!}} B1
{{!}}-
{{!}} A2
{{!}} B2
{{!}}}

...相当于

{|
|-
| A1
| B1
|-
| A2
| B2
|}

此外,您必须确保表格从新行开始,因为空白行已从模板参数中删除。最简单的方法是添加一个空<nowiki />标签。您问题中的代码将如下所示:

{{infobox
 | Row 1 = <nowiki />
  {{{!}} class = "mw-collapsible mw-collapsed wikitable"
  {{!}}-
  {{!}} <!-- Some table content -->
  {{!}}}
}}

在 MediaWiki 的最新版本中,{{!}}语法已添加到软件中,但在Wikia 上,截至 2017 年,需要将其添加到模板中。

于 2014-11-03T17:20:48.477 回答
0

正如上面对 Leo 回答的更多信息(遗憾的是我还不能发表评论),请注意,现在这{{!}}是 MediaWiki 中的一个神奇词,不再需要模板。

请参考https://www.mediawiki.org/wiki/Template:!https://gerrit.wikimedia.org/r/#/c/136234/了解有关 MW 中此修改的详细信息。

于 2017-05-15T15:20:19.810 回答