模板:导航盒
本模板“Navbox翻译版”为允许通过提供一个或多个链接列表,从而相对快速地建立一个导航模板。它配备了缺省样式,这些样式应能对付大多数导航模板。不建议改变缺省样式,尽管这是可以的。为了导航模板的标准化,也为了便于使用,强烈建议使用这个模板,或者它的“Navbox系列”姊妹模板中的某一个。
使用方法
调用参数
请移除置空不用的参数。
{{导航盒 |名称={{subst:FULLPAGENAME}} |标题= |图片= |头栏= |分组1= |列表1= |分组2= |列表2= …… |分组22= |列表22= |尾栏= }}
参数列表
|
如果省略其他参数,必需的 名称 和 标题 会创建一个单行方框。
请注意“分组1”(等等)是可选的,命名为“头栏/尾栏”的部分也是可选的。
基本的和最常见的参数如下所示(参见下方查看完整的列表):
名称 -
模板的名称。标题 -
标题栏的文字,像[[化学分支]]。折叠 - autocollapse、uncollapsed、collapsed
:方框的折叠状态,其中“autocollapse”会自动隐藏被堆叠的多个导航框。
标题样式 -
一个用于标题栏的CSS样式,像:background:gray;
分组样式 -
一个用于分组单元格的CSS样式,像:background:#eee;
图片 -
一个可选的置于右侧的图片(以完整的image标签的形式编码:[[File:XX.jpg|90px]])。左侧图片 -
一个可选的置于左侧的图片(编码方式与“图片”参数相同)。
头栏 -
在 分组/列表 区段之上显示的文字(可能是一栏综合的维基链接)。
分组n -
左侧的文字,在list-n之前(如果group-n被省略,list-n从方框的左侧开始)。列表n -
列出维基链接的文字,通常以圆点符号模板分隔开来,像:[[A]]<code> · </code> [[B]]尾栏 -
分组/列表 区段之下显示的可选文字。
进一步的细节,以及复杂的约束,在下方参数描述章节作了解释。参见其他的一些替代导航格式:表格布局。
参数描述
下面是用于{{导航盒}}的参数的一个完整清单。在大多数情况下,只要有参数名称
、标题
和列表1
就可以了,尽管子导航框甚至不需要设置那些参数。
{{导航盒}}与它的姊妹模板{{Navbox with columns}}、{{Navbox with collapsible groups}}共用很多常用的参数名称,以提高一致性与易用性。带一个†标记的参数适用于所有这三个主模板。
设置参数
- 名称†
- 模板的名称。为了在所有使用了所生成模板的页面上,“刷 • 阅 • 编 • 历”链接都能正确地工作,就需要设置这个参数。你可以输入
{{FULLPAGENAME}}
作为这个参数的值,这也是个快捷的方法。此参数是必需的。 - 折叠† [
autocollapse、uncollapsed、collapsed、plain、off
]
- 缺省为
autocollapse
。如果在使用了其他可折叠表格的同一个页面上有两个或更多表格,那么该页面上的带autocollapse
的导航框一开始就会折叠起来。否则,该导航框会被展开。要了解技术上的实现,请参见MediaWiki:Common.js。 - 如果设置为
collapsed
,该导航框总会在开始时以折叠起来的状态展现。 - 如果设置为
plain
,该导航框总会在被展开时不带右侧的“隐藏”链接,并且标题会保持居中(通过使用补白来偏移刷 • 阅 • 编 • 历链接)。 - 如果设置为
off
,该导航框总会在被展开时不带右侧的“隐藏”链接,但是没有补白会被用来保持标题居中。这只是为了高级用法;“plain”选项应能满足大多数需要将“显示”/“隐藏”按钮隐藏起来的应用。(英文模板已实现。) - 如果设置为除
autocollapse
、collapsed
、plain
或off
之外的其他值(像“uncollapsed”),该导航框总会在开始时以展开的状态出现,但是带有“隐藏”按钮。
- 若要在独处(未被包含)时显示框体,而在一个条目中时自动隐藏内容,可以将“uncollapsed”置于</nowiki>
- 如此设置会强制框体在独处时(甚至是在跟有其他方框时)可见,显示“隐藏”按钮,而当被堆叠在一个条目中时自动折叠框体。
- 很多时候,对于一个导航框,编辑者会想要一个缺省的初始状态,并且在条目中它可以被覆写。要做到这一点,这里有个窍门:
- 在你的居间模板里,创建一个参数也命名为“state”作为一个传递,像这样:
- | 折叠 = {{{折叠<includeonly>|你想要的初始状态</includeonly>}}}
- The <includeonly>|会使得当查看模板页面本身时,模板会被展开。
单元格
- 标题†
- 显示在表格顶端一行居中位置的文字。它通常是该模板的主题,也就是主体内容的一个简要描述。这应该是单独的一行,但是如果需要第二行,请使用
{{-}}
来保证正确的居中。本参数从技术上来说不是必需的,但是使用{{导航盒}}而不带标题是相当没有意义的。
- 分组n†
- (即分组1、分组2等等)如果被指定,文字会显示在位于列表n左侧的抬头单元格中。如果被省略,列表n占用表格的全部宽度。
- 列表n†
- (即列表1、列表2等等)该模板的主体,通常为一栏链接。格式为内联;然而,如果整个列表被装入
<div> </div>
之内,文字能够被输入到不同的行中。最少需要一个列表参数;每个附加的列表被显示在一个单独的表格行中。每个列表n可能在其前面有一个相对应的分组n参数,如果提供了的话(参见下方)。
- 图片†
- 一张图片,会显示在 标题 之下、分组/列表 之右侧的一个单元格中。为使图片能正确地显示,必须指定列表1参数。图片参数接受标准的维基代码来显示图片,即:
图片 = [[文件:图图图.png|100px]]
- 左侧图片†
- 一张图片,会显示在 标题 之下、列表 之左侧的一个单元格中。为使图片能正确地显示,必须指定列表1参数,而且不能指定分组。左侧图片参数接受标准的维基代码来显示图片,即:
左侧图片 = [[文件:图图图.png|100px]]
- 头栏†
- 一个全宽度单元格,显示在标题栏与第一个 分组/列表之间,也就是位于该模板的主体(分组/列表和图片)之上。在一个不带图片的模板中,头栏与不带分组1参数的列表1参数以同样的方式运作。
- 尾栏†
- 一个全宽度单元格,显示在该模板主体(分组/列表和图片)的下方。在一个不带图片的模板中,尾栏与该模板最后面的不带分组n参数的列表n参数以同样的方式运作。
样式参数
一般不建议更改样式,以保持维基百科中模板和网页的一致性。然而,修改样式的选项还是有的。
- 样式†
- 指定应用到模板主体的CSS样式。主体样式参数也有下面举例的同样效果,并能被用来代替这个样式参数。此选项应谨慎使用,因为它可以导致视觉上的不一致。举例:
样式 = background:#nnnnnn;
样式 = width:N [em/%/px or width:auto];
样式 = float:[left/right/none];
样式 = clear:[right/left/both/none];
- 标题样式†
- 应用到标题的CSS样式,最常见的有导航栏的背景颜色:
标题样式 = background:#nnnnnn;
标题样式 = background:name;
- 分组样式†
- 应用到分组N单元格的CSS样式。该选项覆写应用于整个表格的任何样式。举例:
分组样式 = background:#nnnnnn;
分组样式 = text-align:[left/center/right];
分组样式 = vertical-align:[top/middle/bottom];
- 列表样式†
- 应用到所有列表的CSS样式。若指定了下面的奇数样式和偶数样式参数,则它们的优先级高于本参数。
- 奇数样式
- 偶数样式
- 应用到奇数/偶数编号的列表。会推翻由列表样式定义的样式。缺省的表现是分别添加条纹状的颜色(白色和灰色)到奇数/偶数行,以提高可读性。除了在非常特别的情况下,这些设置不应更改。
- 头栏样式†
- 尾栏样式†
- CSS样式,应用到顶端单元格(通过头栏参数指定)和底端单元格(通过尾栏参数指定)。典型地被用来设置背景颜色或文本对齐方式:
头栏样式 = background:#nnnnnn;
尾栏样式 = text-align:[left/center/right];
缺省样式
这里列出的样式设置是使用导航框的编辑者最经常更改的那些设置。其他更加复杂的样式设置被排除在这个列表之外,以保持它简单。大多数样式是在MediaWiki:Common.css中设置。
主体样式 = background:#fdfdfd; width:100%; vertical-align:middle;
标题样式 = background:#ccccff; padding-left:1em; padding-right:1em; text-align:center;
头栏样式 = background:#ddddff; padding-left:1em; padding-right:1em; text-align:center;
尾栏样式 = background:#ddddff; padding-left:1em; padding-right:1em; text-align:center;
分组样式 = background:#ddddff; padding-left:1em; padding-right:1em; text-align:right;
列表样式 = background:transparent; text-align:left/center;
奇数样式 = background:transparent;
偶数样式 = background:#f7f7f7;
由于列表样式和奇数样式是透明的,奇数列表有主体样式的颜色,其缺省值是#fdfdfd(白色带有少许灰色)。一个列表有text-align:left;
设定,如果它有一个分组的话;否则,它有text-align:center;
设定。由于只有主体样式有一个垂直对齐(vertical-align)属性,所 有其他样式继承其vertical-align:middle;
设定。
表格布局
由{{导航盒}}不带图片、头栏和尾栏参数生成的表格(添加了灰色的列表背景色仅仅是为了演示):
|
由{{导航盒}}带有图片、头栏和尾栏参数生成的表格(添加了灰色的列表背景色仅仅是为了演示):
|
由{{导航盒}}带有图片、左侧图片、列表,且不带分组、头栏、尾栏生成的表格(添加了灰色的列表背景色仅仅是为了演示):
|
示例
不带图片
{{导航盒 |名称={{subst:FULLPAGENAME}} |标题 = [[英雄图鉴]] |分组1=战士 |列表1=<ul><li>丛云</li><li>丛云</li><li>丛云</li><li>丛云</li><li>丛云</li></ul> |分组2=法师 |列表2= *顾小满 *顾小满 *顾小满 *顾小满 |分组3=辅助 |列表3=秘银 }}
|
带图片,不带分组
{{导航盒 |名称={{subst:FULLPAGENAME}} |标题 = [[英雄图鉴]] |图片 = [[file:ys_icon.png|link=|80px]] |分组1=战士 |列表1=<ul><li>丛云</li><li>丛云</li><li>丛云</li><li>丛云</li><li>丛云</li></ul> |分组2=法师 |列表2= *顾小满 *顾小满 *顾小满 *顾小满 |分组3=辅助 |列表3=秘银 }}
|
带两张图片,不带分组,多重列表
{{导航盒 |名称={{subst:FULLPAGENAME}} |标题 = [[英雄图鉴]] |图片 = [[file:ys_icon.png|link=|80px]] |左侧图片= [[file:ys_icon.png|link=|80px]] |列表1=<ul><li>丛云</li><li>丛云</li><li>丛云</li><li>丛云</li><li>丛云</li></ul> |列表2= *顾小满 *顾小满 *顾小满 *顾小满 |列表3=秘银 }}
|
带有图片、分组、上方注释、下方注释
{{导航盒 |名称={{subst:FULLPAGENAME}} |标题 = [[英雄图鉴]] |图片 = [[file:ys_icon.png|link=|80px]] |头栏 =此为样例 |分组1=战士 |列表1=<ul><li>丛云</li><li>丛云</li><li>丛云</li><li>丛云</li><li>丛云</li></ul> |分组2=法师 |列表2= *顾小满 *顾小满 *顾小满 *顾小满 |分组3=辅助 |列表3=秘银 |尾栏 =此为样例 }}
|
子导航框
要在一个边框中放置多个导航框,可以使用border参数,或通过将第一个参数指定为“child”来实现。基本用法如下(为第一个组增加了一个子组):
{{导航盒 |名称={{subst:FULLPAGENAME}} |标题=标题 |分组1=[可选] |列表1={{导航盒|child ...子导航内容... }} ... }}
子分组示例
主页面:模板:子导航框
下面的示例展示了子分组的用法。{{子导航框}}是推荐的用法,但通过在{{导航盒}}加入border = child
或将第一个参数(无名)设为child
也可以达到同样的效果。“evenodd”参数用来调整某些子分组中条纹状颜色带的分布,以确保颜色带的排列正确。如果想去除所有的条纹颜色带,可以在每个导航盒中设置列表样式 = background:transparent;
。
|
一个导航模板下包含其它导航模板
主页面:模板:Navbox with collapsible groups
下面的示例中,常规导航盒被用作容器,其列表1、列表2和列表3参数各包含另外的导航盒(设置了1 = child
)。“刷•阅•编•历”标题链接各通过navbar = plain
或直接不填写“名称”参数隐藏。(与常规导航盒不同,子导航盒不要求填写“名称”参数。)
|
与其他导航框模板的关系
此导航框模板被特别设计使得能与另外两个姊妹模板协同工作:{{Navbox with columns}}和{{Navbox with collapsible groups}}。所有这三个模板共用常用的参数,以提高一致性与易用性(此类参数在上面的完整参数列表中用一个†作了标记)。最重要的是,所有这三个模板能互相被用作另一个的子框。
技术细节
- 此模板为其大部分外观使用CSS类,因此它完全可以更换皮肤。
- 欲了解更多技术细节请参见其MediaWiki:Common.css中的CSS类以及MediaWiki:Common.js中用来隐藏框体的可折叠表格。
运作详情
- 列表单元格宽度初始被设置为100%。因此,如果你想手动设置分组单元格的宽度,你就需要同时指定liststyle使之有width:auto。如果你想设置分组宽度并使用图片,这取决于你已弄明白在分组样式、列表样式、图片样式和左侧分组样式参数中的CSS,以使所有部件都工作正常。以下两行是设置分组宽度的示例:
分组样式 = width:10em;
列表样式 = width:auto;
- 相邻的导航框在它们之间仅有一个1px的边框(除了在IE6中,因其不支持必需的CSS)。如果你设置了
样式/主体样式
的顶端外边距(top margin)或底顶端外边距(bottom margin),那么此特性就不运作了。 - 外层导航框表格的缺省的左外边距(margin-left)和右外边距(margin-right)被设置为“auto;”。如果你想使用导航框作为一个浮动对象(float),你需要手动设置左外边距和右外边距的值,因为自动外边距(auto margins)会阻止浮动(float)选项。例如,添加下列代码来使用导航框作为一个浮动对象:
样式 = width:22em;float:right;margin-left:1em;margin-right:0em;
参见
所有模板列表