avatar
匿名用户
×
创建一个新的页面
输入页面标题:
目前语音维基上有2062个页面。 在上方输入您想创建的页面名称或单击以下标题之一,即可开始撰写!



语音维基

模板:Navbox

Sheep-realms讨论 | 贡献2021年2月28日 (日) 15:50的版本
Template-info.svg 模板文档  [查看] [编辑] [历史] [刷新]

该模板可以在页面底部创建一个收纳所有相关条目的导航框,即“大家族模板”。

模块介绍

  • 左上角
    • 查 —— 查看模板页面。
    • 论 —— 对模板进行讨论 不再使用。
    • 编 —— 编辑模板。
  • 顶部 —— 大标题,例如游戏名称。
  • 右上角 —— 折叠按钮。
  • 内容区域 —— 导航链接。

参数列表

基本参数

  • title —— 导航框的标题,不会自动生成链接。
  • name —— 此处填写模板的名称(不包含前缀),用于生成链接。
  • state —— 折叠状态。(mw-uncollapsed、mw-collapsed)
  • before —— 头部信息,留空隐藏。
  • groupn —— 第N个组的标题,如果留空则不显示标题。
  • listn —— 第N个组的内容,如果留空则整行不显示。
  • after —— 尾部信息,留空隐藏。

样式参数

  • class / style —— 整个模板的类/样式。
  • title-style —— 标题样式。
  • before-style —— 头部样式。
  • after-style —— 尾部样式。
  • group-style —— 组标题样式。
    • groupn-style —— 第N个组标题样式。
    • group-odd-style —— 奇数组标题样式。
    • group-even-style —— 偶数组标题样式。
  • list-style —— 组内容样式。
    • listn-style —— 第N个组内容题样式。
    • list-odd-style —— 奇数组内容样式。
    • list-even-style —— 偶数组内容样式。

应用示例

基本示例

{{Navbox
|title = [[红色警戒2]]
|name  = 红色警戒2
|group1 = 盟军
| list1 = [[美国大兵(红色警戒2)|美国大兵]] {{w}} [[警犬(红色警戒2)|警犬]]
|group2 = 苏联
| list2 = [[动员兵(红色警戒2)|动员兵]] {{w}} [[警犬(红色警戒2)|警犬]]
|group3 = 尤里
| list3 = [[尤里新兵(红色警戒2)|尤里新兵]] {{w}} [[尤里工程师(红色警戒2)|尤里工程师]]
}}
· ·
红色警戒2
盟军 美国大兵警犬
苏联 list2
尤里 尤里新兵尤里工程师

有子项目的示例

{{Navbox
|title = [[红色警戒2]]
|name  = 红色警戒2
|group1 = 盟军
| list1 = [[美国大兵(红色警戒2)|美国大兵]] {{w}} [[警犬(红色警戒2)|警犬]]
|group2 = 苏联
| list2 = {{Navbox subgroup
|  group1 = 士兵
|   list1 = [[动员兵(红色警戒2)|动员兵]] {{w}} [[警犬(红色警戒2)|警犬]]
|  group2 = 载具
|   list2 = [[犀牛坦克(红色警戒2)|犀牛坦克]] {{w}} [[防空坦克(红色警戒2)|防空坦克]]
}}
|group3 = 尤里
| list3 = [[尤里新兵(红色警戒2)|尤里新兵]] {{w}} [[尤里工程师(红色警戒2)|尤里工程师]]
}}
· ·
红色警戒2
盟军 美国大兵警犬
苏联 list2
尤里 尤里新兵尤里工程师

更多的嵌套子项目示例

{{Navbox
|title = [[红色警戒2]]
|name  = 红色警戒2
|group1 = 盟军
| list1 = [[美国大兵(红色警戒2)|美国大兵]] {{w}} [[警犬(红色警戒2)|警犬]]
|group2 = 苏联
| list2 = {{Navbox subgroup
|  group1 = 士兵
|   list1 = [[动员兵(红色警戒2)|动员兵]] {{w}} [[警犬(红色警戒2)|警犬]]
|  group2 = 载具
|   list2 = {{Navbox subgroup
|    group1 = 坦克
|     list1 = [[犀牛坦克(红色警戒2)|犀牛坦克]] {{w}} [[苏联基地车(红色警戒2)|苏联基地车]]
|    group2 = 战舰
|     list2 = [[海蠍(红色警戒2)|海蠍]] {{w}} [[无畏级战舰(红色警戒2)|无畏级战舰]]
}}
}}
|group3 = 尤里
| list3 = [[尤里新兵(红色警戒2)|尤里新兵]] {{w}} [[尤里工程师(红色警戒2)|尤里工程师]]
}}
· ·
红色警戒2
盟军 美国大兵警犬
苏联 list2
尤里 尤里新兵尤里工程师

有多个折叠项目的示例

{{Navbox
|title = [[红色警戒2]]
|name  = 红色警戒2
|group1 = 
| list1 = {{Navbox subgroup
|  title  = 盟军
|  group1 = 士兵
|   list1 = [[美国大兵(红色警戒2)|美国大兵]] {{w}} [[警犬(红色警戒2)|警犬]]
|  group2 = 载具
|   list2 = [[灰熊坦克(红色警戒2)|灰熊坦克]]
}}

|group2 = 
| list2 = {{Navbox subgroup
|  title  = 苏联
|  group1 = 士兵
|   list1 = [[动员兵(红色警戒2)|动员兵]] {{w}} [[警犬(红色警戒2)|警犬]]
|  group2 = 载具
|   list2 = [[犀牛坦克(红色警戒2)|犀牛坦克]] {{w}} [[苏联基地车(红色警戒2)|苏联基地车]]
}}

|group3 = 
| list3 = {{Navbox subgroup
|  title  = 尤里
|  group1 = 士兵
|   list1 = [[尤里新兵(红色警戒2)|尤里新兵]] {{w}} [[尤里工程师(红色警戒2)|尤里工程师]]
|  group2 = 载具
|   list2 = [[狂风坦克(红色警戒2)|狂风坦克]]
}}
}}
· ·
红色警戒2
盟军
士兵 美国大兵警犬
载具 灰熊坦克
list2
尤里
士兵 尤里新兵尤里工程师
载具 狂风坦克

折叠示例

{{Navbox
|title = [[红色警戒2]]
|name  = 红色警戒2
|state = mw-collapsed
|group1 = 盟军
| list1 = [[美国大兵(红色警戒2)|美国大兵]] {{w}} [[警犬(红色警戒2)|警犬]]
}}
· ·
红色警戒2
盟军 美国大兵警犬

多项目选择性折叠示例

{{Navbox
|title = [[红色警戒2]]
|name  = 红色警戒2
|group1 = 
| list1 = {{Navbox subgroup
|  title  = 盟军
|  state  = {{#switch:盟军|{{{1}}}=mw-uncollapsed|{{#if:{{{1|}}}|mw-collapsed|mw-uncollapsed}}}}
|  group1 = 士兵
|   list1 = [[美国大兵(红色警戒2)|美国大兵]] {{w}} [[警犬(红色警戒2)|警犬]]
}}

|group2 = 
| list2 = {{Navbox subgroup
|  title  = 苏联
|  state  = {{#switch:苏联|{{{1}}}=mw-uncollapsed|{{#if:{{{1|}}}|mw-collapsed|mw-uncollapsed}}}}
|  group1 = 士兵
|   list1 = [[动员兵(红色警戒2)|动员兵]] {{w}} [[警犬(红色警戒2)|警犬]]
}}

|group3 = 
| list3 = {{Navbox subgroup
|  title  = 尤里
|  state  = {{#switch:尤里|{{{1}}}=mw-uncollapsed|{{#if:{{{1|}}}|mw-collapsed|mw-uncollapsed}}}}
|  group1 = 士兵
|   list1 = [[尤里新兵(红色警戒2)|尤里新兵]] {{w}} [[尤里工程师(红色警戒2)|尤里工程师]]
}}
}}

关键代码:

|  state  = {{#switch:组名称|{{{1}}}=mw-uncollapsed|{{#if:{{{1}}}|mw-collapsed|mw-uncollapsed}}}}

那么该模板若接受了一个参数“盟军”,将会显示为:

· ·
红色警戒2
盟军
士兵 美国大兵警犬
list2
尤里
士兵 尤里新兵尤里工程师

细节说明

  • {{Navbox subgroup}}是一个子模板,每一次调用相当于创建了一个新的独立对象,模板之间的参数不会相互冲突,甚至在嵌套模板中也是如此,例如在上一个模板中已经使用过的group1,在下一个模板中仍然可以使用,而不是累加。
  • 由于存在奇偶行背景区分,在有使用{{Navbox subgroup}}模板的大家族模板中背景可能会变得比较混乱。这个问题很好解决,只要把子模板里的group和list序号改一改就可以了,例如把group1改成group2,list1改成list2,然后继续把原来的group2改成group3......相当于把所有内容向下移动了一行,而空行不会显示内容,因此导致背景的奇偶效果对调,以此来调整出好看的背景。
    • 或者我们还有另一种解决方案,通过自定义样式移除区分奇偶行的背景,然后加上边框或其他能体现出行与行的边界的设计。当然这么做的前提是模板整体效果符合该模板所收录内容(游戏)的美术风格。

实际案例展示

另见