模板:Navbox

出自恶俗维基
跳至導覽 跳至搜尋
[編輯] [清除快取] 模板文檔

本模板允許通過提供一個或多個連結列表,從而相對快速地建立一個導航模板。它配備了缺省樣式,這些樣式應能對付大多數導航模板。不建議改變缺省樣式,儘管這是可以的。為了導航模板的標準化,也為了便於使用,強烈建議使用這個模板。

用法

請移除置空不用的參數。

{{Navbox
| name    ={{subst:PAGENAME}}
| title   =
| image   =
| above   =

| group1  =
| list1   =

| group2  =
| list2   =

……

| group20 =
| list20  =

| below   =
}}

參數列表

Navbox使用小寫的參數名稱,如上面框中所示。如果省略其他參數,必需的nametitle會創建一個單行方框。

請注意「group1」(等等)是可選的,命名為「above/below」的部分也是可選的。

基本的和最常見的參數如下所示(參見下方查看完整的列表):

name - 模板的名稱。
title - 標題欄的文字,像[[东方红魔乡]]。
state - autocollapse、uncollapsed、collapsed:方框的摺疊狀態,其中「autocollapse」會自動隱藏被堆疊的多個導航框。
titlestyle - 一個用於標題欄的CSS樣式,像:background:gray;
groupstyle - 一個用於分組單元格的CSS樣式,像:background:#eee;
image - 一個可選的置於右側的圖片(以完整的圖片標籤的形式編碼:[[文件:XX.jpg|90px]])。
imageleft - 一個可選的置於左側的圖片(編碼方式與「image」參數相同)。
above - 在group/list區段之上顯示的文字(可能是一欄綜合的維基連結)。
groupn - 左側的文字,在list-n之前(如果group-n被省略,list-n從方框的左側開始)。
listn - 列出維基連結的文字,通常以圓點符號模板分隔開來,像:[[A]]<code> {{·}}</code> [[B]]
below - 在group/list區段之下顯示的可選文字。

進一步的細節,以及複雜的約束,在下方參數描述章節作了解釋。參見其他的一些替代導航格式:表格佈局

參數描述

下面是用於{{Navbox}}的參數的一個完整清單。在大多數情況下,只要有參數nametitlelist1就可以了,儘管子導航框甚至不需要設置那些參數。

設置參數

name
模板的名稱。為了在所有使用了所生成模板的頁面上,「檢  · · 編」連結都能正確地工作,就需要設置這個參數。你可以輸入{{subst:PAGENAME}}作為這個參數的值,這也是個快捷的方法。此參數是必需的。
state [autocollapse、uncollapsed、collapsed、plain、off]
  • 缺省為autocollapse。如果在使用了其他可摺疊表格的同一個頁面上有兩個或更多表格,那麼該頁面上的帶autocollapse的導航框一開始就會摺疊起來。否則,該導航框會被展開。要了解技術上的實現,請參見MediaWiki:Common.js
  • 如果設置為collapsed,該導航框總會在開始時以摺疊起來的狀態展現。
  • 如果設置為plain,該導航框總會在被展開時不帶右側的「隱藏」連結,並且標題會保持居中(通過使用補白來偏移查 • 論 • 編 • 歷連結)。(英文模板已實現。)
  • 如果設置為off,該導航框總會在被展開時不帶右側的「隱藏」連結,但是沒有補白會被用來保持標題居中。這只是為了高級用法;「plain」選項應能滿足大多數需要將「顯示」/「隱藏」按鈕隱藏起來的應用。(英文模板已實現。)
  • 如果設置為除autocollapsecollapsedplainoff之外的其他值(像「uncollapsed」),該導航框總會在開始時以展開的狀態出現,但是帶有「隱藏」按鈕。
若要在獨處(未被包含)時顯示框體,而在一個條目中時自動隱藏內容,可以將「uncollapsed」置於</nowiki>
  • 如此設置會強制框體在獨處時(甚至是在跟有其他方框時)可見,顯示「隱藏」按鈕,而當被堆疊在一個條目中時自動摺疊框體。
很多時候,對於一個導航框,編輯者會想要一個缺省的初始狀態,並且在條目中它可以被覆寫。要做到這一點,這裏有個竅門:
在你的居間模板里,創建一個參數也命名為「state」作為一個傳遞,像這樣:
  • | state = {{{state<includeonly>|你想要的初始状态</includeonly>}}}
  • 這個<includeonly>|會使得當查看模板頁面本身時,模板會被展開。
navbar
缺省為Tnavbar。如果設置為plain,在標題欄左側的查 • 論 • 編 • 歷連結不會顯示出來,而且補白會被自動應用以保持標題居中。設置為off可以移除查 • 論 • 編 • 歷連結(英文模板已實現),但是不會應用補白(這只是為了高級用法;「plain」選項應能滿足大多數不想要導航欄的應用。)強烈建議使用者不要隱藏導航欄,為的是使用戶編輯該模板更加容易,並且可以貫穿各個頁面都有一個標準的風格。

單元格

title
顯示在表格頂端一行居中位置的文字。它通常是該模板的主題,也就是主體內容的一個簡要描述。這應該是單獨的一行,但是如果需要第二行,請使用{{-}}來保證正確的居中。本參數從技術上來說不是必需的,但是使用{{Navbox}}而不帶標題是相當沒有意義的。
groupn
(即group1group2等等)如果被指定,文字會顯示在位於listn左側的抬頭單元格中。如果被省略,listn佔用表格的全部寬度。
listn
(即list1list2等等)該模板的主體,通常為一欄連結。格式為內聯;然而,如果整個列表被裝入<div> </div>之內,文字能夠被輸入到不同的行中。最少需要一個list參數;每個附加的list被顯示在一個單獨的表格行中。每個listn可能在其前面有一個相對應的groupn參數,如果提供了的話(參見下方)。
image
一張圖片,會顯示在標題(title)之下、主體(group/list)之右側的一個單元格中。為使圖片能正確地顯示,必須指定list1參數。image參數接受標準的維基代碼來顯示圖片,即:
image = [[文件:Example.jpg|100px]]
imageleft
一張圖片,會顯示在標題(title)之下、主體(list)之左側的一個單元格中。為使圖片能正確地顯示,必須指定list1參數,而且不能指定分組(group)。imageleft參數接受標準的維基代碼來顯示圖片,即:
imageleft = [[文件:Example.jpg|100px]]
above
一個全寬度單元格,顯示在標題欄與第一個group/list之間,也就是位於該模板的主體(group、list和image)之上。在一個不帶圖片的模板中,above與不帶group1參數的list1參數以同樣的方式運作。
below
一個全寬度單元格,顯示在該模板主體(group、list和image)的下方。在一個不帶圖片的模板中,below與該模板最後面的不帶groupn參數的listn參數以同樣的方式運作。作為一個使用了below參數的示例。

樣式參數

一般不建議更改樣式,以保持維基百科中模板和網頁的一致性。然而,修改樣式的選項還是有的。

style
指定應用到模板主體的CSS樣式。bodystyle參數也有下面舉例的同樣效果,並能被用來代替這個style參數。此選項應謹慎使用,因為它可以導致視覺上的不一致。舉例:
style = background:#nnnnnn;
style = width:N [em/%/px or width:auto];
style = float:[left/right/none];
style = clear:[right/left/both/none];
titlestyle
應用到title的CSS樣式,最常見的有導航欄的背景顏色:
titlestyle = background:#nnnnnn;
titlestyle = background:name;
groupstyle
應用到groupN單元格的CSS樣式。該選項覆寫應用於整個表格的任何樣式。舉例:
groupstyle = background:#nnnnnn;
groupstyle = text-align:[left/center/right];
groupstyle = vertical-align:[top/middle/bottom];
liststyle
應用到所有list的CSS樣式。若指定了下面的oddstyleevenstyle參數,則它們的優先級高於本參數。
oddstyle
evenstyle
應用到奇數/偶數編號的列表。會推翻由liststyle定義的樣式。缺省的表現是分別添加條紋狀的顏色(白色和灰色)到奇數/偶數行,以提高可讀性。除了在非常特別的情況下,這些設置不應更改。
abovestyle
belowstyle
CSS樣式,應用到頂端單元格(通過above參數指定)和底端單元格(通過below參數指定)。典型地被用來設置背景顏色或文本對齊方式:
abovestyle = background:#nnnnnn;
abovestyle = text-align:[left/center/right];
缺省樣式

這裏列出的樣式設置是使用導航框的編輯者最經常更改的那些設置。其他更加複雜的樣式設置被排除在這個列表之外,以保持它簡單。大多數樣式是在MediaWiki:Common.css中設置。

bodystyle =background:#fdfdfd; width:100%; vertical-align:middle;
titlestyle =background:#ccccff; padding-left:1em; padding-right:1em; text-align:center;
abovestyle =background:#ddddff; padding-left:1em; padding-right:1em; text-align:center;
belowstyle =background:#ddddff; padding-left:1em; padding-right:1em; text-align:center;
groupstyle =background:#ddddff; padding-left:1em; padding-right:1em; text-align:right;
liststyle =background:transparent; text-align:left/center;
oddstyle =background:transparent;
evenstyle =background:#f7f7f7;

由於liststyleoddstyle是透明的,奇數列表有bodystyle的顏色,其缺省值是#fdfdfd(白色帶有少許灰色)。一個list有text-align:left;設定,如果它有一個group的話;否則,它有text-align:center;設定。由於只有bodystyle有一個垂直對齊(vertical-align)屬性,所 有其他樣式繼承其vertical-align:middle;設定。


表格佈局

由{{Navbox}}不帶imageabovebelow參數生成的表格(添加了灰色的列表背景色僅僅是為了演示):


由{{Navbox}}帶有imageabovebelow參數生成的表格(添加了灰色的列表背景色僅僅是為了演示):


由{{Navbox}}帶有imageimageleftlists,且不帶groupsabovebelow生成的表格(添加了灰色的列表背景色僅僅是為了演示):

示例

不帶圖片

{{Navbox
| name   =Navbox/doc
| title  =Bilibili
| group1 =[[运营本社]]
| list1  =[[上海幻电信息科技有限公司]] {{·}} [[bilibili]]
| group2 =[[领导班子]]
| list2  =上海特首[[徐逸]] {{·}} 逸斯兰国董事委员会总书记[[陈睿]]
| group3 =[[旗下艺人]]
| list3  =[[四 大 蛆 王|四大蛆王]] {{·}} [[吔总会]]
| group4 =[[普通员工]]
| list4  =三姓家奴[[瞿申图]] {{·}} 吃雪审核[[林佳奇]]
| group5 =[[其他明星]]
| list5  =盈利解说[[韩光雨]] {{·}} 中专肥宅[[苗帅]] {{·}} 鬼畜教父[[刘典]]
}}

帶圖片,不帶分組

{{Navbox
| name  =Navbox/doc
| title =[[双重剧透: 符卡|双重剧透 符卡列表]]
| image =[[文件:Th125cover.jpg|120px]]
| list1 =Level [[双重剧透: Level 1 符卡|1]] {{·}} [[双重剧透: Level 2 符卡|2]] {{·}} [[双重剧透: Level 3 符卡|3]] {{·}} [[双重剧透: Level 4 符卡|4]] {{·}} [[双重剧透: Level 5 符卡|5]] {{·}} [[双重剧透: Level 6 符卡|6]] {{·}} [[双重剧透: Level 7 符卡|7]] {{·}} [[双重剧透: Level 8 符卡|8]] {{·}} [[双重剧透: Level 9 符卡|9]] {{·}} [[双重剧透: Level 10 符卡|10]] {{·}} [[双重剧透: Level 11 符卡|11]] {{·}} [[双重剧透: Level 12 符卡|12]] {{·}} [[双重剧透: Level EX 符卡|EX]] {{·}} [[双重剧透: Level Spoiler 符卡|Spoiler]]
}}


帶兩張圖片,不帶分組,多重列表

{{Navbox
| name      =Navbox/doc
| title     =[[双重剧透]]
| image     =[[文件:Th125cover.jpg|120px]]
| imageleft =[[文件:Th125cover.jpg|120px]]
| list1     =[[双重剧透: 角色|角色]] {{·}} [[双重剧透: 攻略|攻略]] {{·}} [[:分类:双重剧透录像|录像]]
| list2     =Level [[双重剧透: Level 1 符卡|1]] {{·}} [[双重剧透: Level 2 符卡|2]] {{·}} [[双重剧透: Level 3 符卡|3]] {{·}} [[双重剧透: Level 4 符卡|4]] {{·}} [[双重剧透: Level 5 符卡|5]] {{·}} [[双重剧透: Level 6 符卡|6]] {{·}} [[双重剧透: Level 7 符卡|7]] {{·}} [[双重剧透: Level 8 符卡|8]] {{·}} [[双重剧透: Level 9 符卡|9]] {{·}} [[双重剧透: Level 10 符卡|10]] {{·}} [[双重剧透: Level 11 符卡|11]] {{·}} [[双重剧透: Level 12 符卡|12]] {{·}} [[双重剧透: Level EX 符卡|EX]] {{·}} [[双重剧透: Level Spoiler 符卡|Spoiler]]
| list3     =Level Spoiler 对话 {{·}} [[双重剧透: 音乐|音乐]] {{·}} [[双重剧透: 后记|后记]] {{·}} [[双重剧透: 杂项|杂项]]
}}

帶有圖片、分組、上方注釋、下方注釋

{{Navbox
| name   =Navbox/doc
| title  =[[双重剧透]]
| image  =[[文件:Th125cover.jpg|120px]]

| above  =上方文字放在这里

| group1 =[[双重剧透: 玩法|游戏玩法]]
| list1  =[[双重剧透: 角色|角色]] {{·}} [[双重剧透: 攻略|攻略]] {{·}} [[:分类:双重剧透录像|录像]]

| group2 =[[双重剧透: 符卡|符卡]]
| list2  =Level [[双重剧透: Level 1 符卡|1]] {{·}} [[双重剧透: Level 2 符卡|2]] {{·}} [[双重剧透: Level 3 符卡|3]] {{·}} [[双重剧透: Level 4 符卡|4]] {{·}} [[双重剧透: Level 5 符卡|5]] {{·}} [[双重剧透: Level 6 符卡|6]] {{·}} [[双重剧透: Level 7 符卡|7]] {{·}} [[双重剧透: Level 8 符卡|8]] {{·}} [[双重剧透: Level 9 符卡|9]] {{·}} [[双重剧透: Level 10 符卡|10]] {{·}} [[双重剧透: Level 11 符卡|11]] {{·}} [[双重剧透: Level 12 符卡|12]] {{·}} [[双重剧透: Level EX 符卡|EX]] {{·}} [[双重剧透: Level Spoiler 符卡|Spoiler]]

| group3 =其他
| list3  =Level Spoiler 对话 {{·}} [[双重剧透: 音乐|音乐]] {{·}} [[双重剧透: 后记|后记]] {{·}} [[双重剧透: 杂项|杂项]]

| below  =网站:[http://www16.big.or.jp/~zun/ Team Shanghai Alice]
}}


技術細節

運作詳情

  • 列表單元格寬度初始被設置為100%。因此,如果你想手動設置分組單元格的寬度,你就需要同時指定liststyle使之有width: auto。如果你想設置分組寬度並使用圖片,這取決於你已弄明白在groupstyle、liststyle、imagestyle和imageleftstyle參數中的CSS,以使所有部件都工作正常。以下兩行是設置分組寬度的示例:
groupstyle =width: 10em;
liststyle =width: auto;
  • 相鄰的導航框在它們之間僅有一個1px的邊框(除了在IE6中,因其不支持必需的CSS)。如果你設置了style/bodystyle的頂端外邊距(top margin)或底頂端外邊距(bottom margin),那麼此特性就不運作了。
  • 外層導航框表格的缺省的左外邊距(margin-left)和右外邊距(margin-right)被設置為「auto;」。如果你想使用導航框作為一個浮動對象(float),你需要手動設置左外邊距和右外邊距的值,因為自動外邊距(auto margins)會阻止浮動(float)選項。例如,添加下列代碼來使用導航框作為一個浮動對象:
style =width: 22em; float: right; margin-left: 1em; margin-right: 0em;

Template:Fmbox