模板:Navbox

本頁使用了標題或全文手工轉換
被永久保護的模板
維基百科,自由的百科全書
文件圖示 模板文件[檢視] [編輯] [歷史] [清除快取]

本模板可相對快速地建立一個導航模板,它配備了缺省樣式,這些樣式能對付大多數導航模板。不建議改變缺省樣式,儘管這是可以的。為了導航模板的標準化,也為了方便使用,強烈建議使用這個模板,或者它的「Navbox系列」姊妹模板中的某一個。

用法

請移除置空不用的參數。

{{Navbox
| state      = autocollapse <!--autocollapse、uncollapsed、collapsed、plain、off-->
| name       = {{subst:PAGENAME}}
| title      = 
| image      = 
| above      = 
| abovestyle = 
| listclass  = hlist
| group1     = 
| list1      = 
| group2     = 
| list2      = 
| group3     = 
| list3      = 
| group4     = 
| list4      = 
| group5     = 
| list5      = 
| group6     = 
| list6      = 
| group7     = 
| list7      = 
| group8     = 
| list8      = 
| group9     = 
| list9      = 
| group10    = 
| list10     = 
| group11    = 
| list11     = 
| group12    = 
| list12     = 
| group13    = 
| list13     = 
| group14    = 
| list14     = 
| group15    = 
| list15     = 
| group16    = 
| list16     = 
| group17    = 
| list17     = 
| group18    = 
| list18     = 
| group19    = 
| list19     = 
| group20    = 
| list20     = 
| belowstyle = 
| below      = 
}}

參數列表

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

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

基本的和最常見的參數如下所示:

name
模板的名稱(「Template:」後面的部分,注意不是模板的標題)。
title
標題欄的文字,像[[化学分支]]。
listclass
用於list單元格的CSS樣式,常設定為hlist以使用水平列表。如果abovebelow也需使用水平列表則應改用bodyclass參數。
state - autocollapse、uncollapsed、collapsed:方框的摺疊狀態,其中「autocollapse」會自動隱藏被堆疊的多個導航框。
titlestyle
一個用於標題欄的CSS樣式,像:background:gray;
groupstyle
一個用於分組單元格的CSS樣式,像:background:#eee;
image
一個可選的右側圖片,以完整image標籤的形式編碼:[[File:XX.jpg|90px]]。
imageleft
一個可選的左側圖片,編碼方式與「image」參數相同。
above
在group/list區段之上顯示的文字,可能是一欄綜合的維基鏈接。
groupn
左側的文字,在list-n之前(如果group-n被省略,list-n從方框的左側開始)。
listn
列出維基鏈接的文字,通常是一個無序列表
below
在group/list區段之下顯示的文字。

下方參數描述章節解釋了進一步的細節及限制。其他導航格式則可見表格的布局

參數描述

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

{{Navbox}}與它的姊妹模板{{Navbox with columns}}、{{Navbox with collapsible groups}}共用很多參數名稱,以提高一致性與易用性。帶有標記的參數適用於這三個主模板。

設置參數

name
模板的名稱。為了使所有衍生模板的「閱·論·編」鏈接正確工作,就必須設置這個參數。你可以輸入{{subst:PAGENAME}}作為這個參數的值,這也是個快捷的方法。
state [autocollapse、uncollapsed、collapsed、plain、off]
  • 缺省為autocollapse。如果一個頁面上同時有兩個或更多可摺疊表格,那麼該頁面上的帶autocollapse的導航框在頁面載入時會摺疊起來。要了解技術上的實現,請參見MediaWiki:Gadget-collapsibleTables.js
  • 如果設置為collapsed,該導航框會在頁面載入時摺疊起來。
  • 如果設置為plain,該導航框在展開時不帶右側的「隱藏」鏈接,並且標題會保持居中(通過使用補白來偏移閱·論·編鏈接)。
  • 如果設置為off,該導航框在展開時不帶右側的「隱藏」鏈接,但是沒有補白、標題未必居中。這只是為了高級用法;「plain」選項應能滿足大多數需要將「顯示」/「隱藏」按鈕隱藏起來的應用。
  • 如果設置為除autocollapsecollapsedplainoff之外的其他值(像「uncollapsed」),該導航框會在頁面載入時展開,並帶有「隱藏」按鈕。
若要在獨處(未被包含)時顯示框體及「隱藏」按鈕,而在條目中自動隱藏內容,可以將「uncollapsed」置於<noinclude>標籤之內:
  • state = <noinclude>uncollapsed</noinclude>
如果想讓編輯者在條目中覆寫摺疊狀態,可以這樣做:
在你創建的模板里,像這樣加入也命名為「state」的傳遞參數:
  • | state = {{{state<includeonly>|你想要的初始状态</includeonly>}}}
  • <includeonly>|使模板在本身頁面時展開。
  • 示例:{{土星的衛星}}帶autocollapse作為其缺省的初始狀態。條目土衛三十五嵌入包含了它,並且只有一個導航框架。因此該頁面的「土星的衛星」導航框顯示;條目土衛一有兩個導航框,因此該頁面的「土星的衛星」導航框摺疊。此外也可在條目中使用帶state參數的引用形式(如{{土星的卫星|state=collapsed}})覆寫其摺疊狀態。
  • 示例:{{阿拉伯語言}}帶expanded作為其缺省的初始狀態。所有嵌入包含它的條目缺省情況下會顯示內容,除非條目在嵌入包含它時指定了state = collapsed。
navbar
缺省為Navbar。如果設置為plain,在標題欄左側的閱·論·編鏈接不會顯示,而且自動應用補白以保持標題居中;設置為off可以移除閱·論·編鏈接,但是不會應用補白(這只是為了高級用法;「plain」選項應能滿足大多數不想要導航欄的應用。)強烈建議使用者不要隱藏導航欄,為的是使用戶編輯該模板更加容易,並且在各頁面中保持標準風格。

單元格

title
顯示在表格頂端一行居中位置的文字,它通常是該模板的主題,也就是主體內容的簡要描述。這應該是單獨的一行,如果需要第二行,請使用{{Clear}}來保證正確的居中。本參數從技術上來說不是必需,但是使用{{Navbox}}而不帶標題相當沒有意義。
groupn
(即group1group2等等)如果被指定,文字會顯示在listn左側的抬頭單元格中;如果被省略,listn占用表格的全部寬度。
listn
(即list1list2等等)模板的主體,每個導航框至少需要一個list參數,通常為一欄鏈接,格式為內鏈;如果整個列表被裝入<div> </div>內則可分行顯示。每個附加的list被顯示在一個單獨的表格行中,每個listn前面可能有一個相對應的groupn參數。
水平列表中,每個內部連結都應新起一行,並以星號*開頭,使用兩個或更多星號會增加更多階層。
image
一張圖片會顯示在標題(title)下、主體(group/list)右側的一個單元格中。為使圖片正確顯示,必須指定list1參數。image參數僅接受標準的維基代碼即:
image = [[File:Example.jpg|100px]]
imageleft
一張圖片會顯示在標題(title)下、主體(list)左側的一個單元格中。為使圖片能正確顯示,必須指定list1參數,而且不能指定分組(group)。imageleft僅接受標準的維基代碼即:
imageleft = [[File: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];
basestyle
CSS樣式,會同時應用到titleabovebelowgroup單元格,不會應用到list單元格。使編輯者容易改變導航框的基本顏色,而無需在不同部分重複指定。舉例:
basestyle = background:lightskyblue;
titlestyle
應用到title的CSS樣式,最常用於指定title背景顏色:
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對應group的話會有text-align:left;設定,,否則text-align:center;。由於只有bodystyle有一個垂直對齊(vertical-align)屬性,所有其他樣式繼承其vertical-align:middle;設定。

表格的布局

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


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


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

示例

不帶圖片

{{Navbox
|listclass=hlist
|name  = {{subst:PAGENAME}}
|title = [[多媒体超级走廊]](马来西亚){{Clear}}「不带图片」

|group1 = 中心
| list1 = [[赛柏再也]]

|group2 = 区域
| list2 = [[巴生谷]]

|group3 = 主要地标
| list3 = 
* [[双子塔]]
* [[吉隆坡电讯高塔]]
* [[吉隆坡中央车站]]
* [[马来西亚科技园]]
* [[布城]]
* [[赛柏再也]]
* [[吉隆坡国际机场]]

|group4 = 基础设施
| list4 = 
* [[快速铁路]]
* [[吉隆坡-布城高速公路]]
* [[全机场管理系统]]

|group5 = 首要应用
| list5 = 
* [[电子政务]]
* [[大马卡]]  
}}


帶圖片,不帶分組

{{Navbox
|listclass=hlist
|name  = {{subst:PAGENAME}}
|title = [[多媒体超级走廊]](马来西亚)
|image = [[File:Flag of Malaysia.svg|80px]]
|list1 = 
* [[双子塔]]
* [[吉隆坡电讯高塔]]
* [[吉隆坡中央车站]]
* [[马来西亚科技园]]
* [[布城]]
* [[赛柏再也]]
* [[吉隆坡国际机场]]
}}


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

{{Navbox
|listclass=hlist
|name  = {{subst:PAGENAME}}
|title = [[多媒体超级走廊]](马来西亚)
|image = [[File:Flag of Malaysia.svg|80px]]
|imageleft = [[File:Flag of Malaysia.svg|80px]]
|list1 = 
* [[双子塔]]
* [[吉隆坡电讯高塔]]
* [[吉隆坡中央车站]]
|list2 = 
* [[快速铁路]]
* [[吉隆坡-布城高速公路]]
* [[全机场管理系统]]
|list3 = 
* [[电子政务]]
* [[大马卡]] 
|list4 = 
* [[巴生谷]]
}}


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

{{Navbox
|listclass=hlist
|name  = {{subst:PAGENAME}}
|title = [[多媒体超级走廊]](马来西亚)
|image = [[File:Flag of Malaysia.svg|80px]]

|above = 上方文字放在这里

|group1 = 中心
|list1  = 
* [[赛柏再也]]

|group2 = Area
|list2  = 
* [[巴生谷]]

|group3 = 主要地标
|list3  = 
* [[双子塔]]
* [[吉隆坡电讯高塔]]
* [[吉隆坡中央车站]]
* [[马来西亚科技园]]
* [[布城]]
* [[赛柏再也]]
* [[吉隆坡国际机场]]

|group4 = 基础设施
|list4  = 
* [[快速铁路]]
* [[吉隆坡-布城高速公路]]
* [[全机场管理系统]]

|group5 = 首要应用
|list5  = 
* [[电子政务]]
* [[大马卡]] 

|below  = 网站:[http://www.msc.com.my/ www.msc.com.my]
}}

子導航框

要在一個邊框中放置多個導航框,可以、使用{{Navbox subgroup}},或將參數1或border參數指定為「child」,為第一個組增加了一個子組如下:

{{Navbox
| name = {{subst:PAGENAME}}
| title = Title

| group1 = [optional]
| list1  = {{Navbox|child
   ...子導航框參數...
 }}

...
}}

「evenodd」參數用來調整子分組中條紋狀顏色帶的分布,以確保顏色排列正確。如果想去除所有的條紋顏色帶,可以在每個Navbox中設置liststyle = background:transparent;

一個導航模板下包含其他導航模板

下面的示例中,常規Navbox被用作容器,其list1、list2和list3參數各包含另外的Navbox(設置了1 = child)。「閱·論·編」標題鏈接各通過navbar = plain或直接不填寫「name」參數隱藏。(與常規Navbox不同,子Navbox不要求填寫「name」參數。)

與其他導航框模板的關係

此導航框模板被特別設計使得能與另外兩個姊妹模板協同工作:{{Navbox with columns}}和{{Navbox with collapsible groups}}。所有這三個模板共用常用的參數,以提高一致性與易用性(此類參數在上面的完整參數列表中用作了標記)。最重要的是,所有這三個模板能互相被用作另一個的子模板(通過使用border = child參數,或將第一個參數(無名)指定為child。例如,使用{{Navbox|child ...}}{{Navbox with columns|child ...}}{{Navbox with collapsible groups|child ...}})。

由於嵌入子導航框可能使導航框、引用頁面超出模板引用大小限制,故可使用{{NavboxV2}}取代上面三種模板。

技術細節

運作詳情

  • 列表單元格寬度初始設置為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;
  • 一般不需要手動使用圓點模板,因為listclass=hlist中的hlist class會自動把列表摺疊為圓點形式,並且還會處理嵌套括號。使用列表形式有助殘障人士訪問,見親和力

參見

  • {{Nowrap begin}}-於列表項目中間插入圓點、直管線或破折號的格式模板。
  • {{Nobold}}-當預設文字樣式設定為粗體時,可用來顯示無粗體文字的模板。
  • {{·}}{{}}-分隔列表項目的圓點,一般不應使用。
  • {{Collapsible option}}-提示控制模板的顯示狀態。
導航模板比較
可摺疊? 標題顏色 圖像 組別 樣式(主體)
參數
範例
{{Navbox}} navbox 主體左/右側 {{H:f Help}}
{{Navbox with columns}} navbox 欄左/右側 {{APEC}}
{{NavboxYears}} navbox
{{Navbox with collapsible groups}} navbox 主體左/右側 及/或 在每列表中 {{ATI}}
摺疊屬性
類別 CSS class Javascript 何時摺疊 自定義
初始狀態
套疊結構
Collapsible tables collapsible Common.js定義 頁面有兩塊或以上autocollapse模板

重定向

沒有描述。

模板參數[編輯模板資料]

參數描述類型狀態
imageimage

沒有描述

不明非必填
TitleTitle

沒有描述

不明非必填
aboveabove

沒有描述

不明非必填
group1group1

沒有描述

不明非必填
list1list1

沒有描述

不明非必填
group2group2

沒有描述

不明非必填
list2list2

沒有描述

不明非必填
list3list3

沒有描述

不明非必填
group3group3

沒有描述

不明非必填
group4group4

沒有描述

不明非必填
list4list4

沒有描述

不明非必填
belowbelow

沒有描述

不明非必填
imageleftimageleft

沒有描述

不明非必填
模板的名稱name

沒有描述

不明非必填
標題欄的文字title

沒有描述

不明非必填
listclasslistclass

用於list單元格的CSS樣式,常設定為hlist以使用水平列表。如果above、below也需使用水平列表則應改用bodyclass參數。

不明非必填
titlestyletitlestyle

一個用於標題欄的CSS樣式

範例
background:gray
不明非必填