模板:Infobox/doc

從 WikiFur
跳到: 導覽搜尋

模板:Documentation subpage 模板:Intricate template

本模板為一系列模板的元模板,亦即本模版將用於構建其他模板。請勿在條目中直接使用此模板。參見Help:資訊框以獲取創建通用信息框的進一步方法。

用法[編輯]

本模板與{{navbox}}的用法相似,但也有一些不同之處。表格中的每一行既可以是頂欄(header),也可以是成對的標籤(label)與資料(data),甚至還可以只是一個資料單元。每行只能有一種狀態,且具有優先級:當你將一行同時定義為頂欄與標籤/資料對,那麼標籤/資料對的定義將會被忽略。

參數[編輯]

「檢視/討論/編輯/歷史」鏈接[編輯]

name 
「檢視/討論/編輯/歷史」鏈接需要指向模板頁的名稱(name)。你可以填寫{{subst:PAGENAME}}。如果此參數未填,則「檢視/討論/編輯/歷史」鏈接不會顯示。

標題[編輯]

信息框外的標題文本
(信息框的其餘部分)
信息框內的標題文本
(信息框的其餘部分)

有兩種方式為一個信息框填入標題。一種是將標題填在信息框外,另一種則是填寫在信息框內。根據需要,你可以選擇其中的一種使用,亦或同時使用這兩種標題,甚至都不使用(儘管我們不推薦這樣做)。

title 
填寫在信息框表格外頂部的標題文本。
above 
填寫在信息框表格內頂部單元的標題文本。

可選項[編輯]

image 
在模板上部顯示的圖像。請使用完整的圖像語法,例如[[File:example.png|200px]]。圖像的位置默認為居中。
caption 
位於圖像下方的說明文本。
header(n) 
填入第n行的頂欄文本。
label(n)
填入第n行的標籤文本。
data(n)
填入第n行的資料文本。
below
填寫在信息框表格底部單元的文本。底部單元一般用來填寫腳註、參見及其他類似的信息。

可選的CSS風格[編輯]

bodystyle 
應用到信息框表格全體。
titlestyle 
應用到信息框表格外的標題中。不建議在此處填寫背景顏色(background color),因為該處的文字位於信息框外。
abovestyle 
應用到信息框表格內頂部單元中。默認的風格為「font-size:large;」(字號設為大號),因為該單元常被用作標題。如果你希望讓頂部單元以正常字號顯示,只需在該處填寫的內容中包含「font-size:medium;」。
imagestyle 
應用到信息框的圖像單元中,包括圖像下方的說明文本。但是,出於兼容性與未來修改的考慮,如果你需要設置說明文本的屬性,請使用captionstyle而不要使用imagestyle。
captionstyle 
應用到圖像說明文本中。
headerstyle 
應用到所有的頂欄單元。
labelstyle 
應用到所有的標籤單元。
datastyle 
應用到所有的資料單元。
belowstyle 
應用到底部單元中。

微格式[編輯]

bodyclass
該參數影響信息框整體的類(class)。
imageclass
該參數影響圖像的類;在某些特殊情況中,可以把{{Image class names}}填寫在此參數內。
class(n)
該參數影響特定行資料單元的類。如果信息框沒有資料單元,則不會產生作用。
titleclass
該參數影響信息框外標題的類。
aboveclass
該參數影響信息框內標題的類。

通過為各個資料單元定義類名,本模板可以支持微格式信息;此處所說的類名,是根據標準定義的,且可以向機器表明信息的類型。例如,如果一個信息框使用了hCard的微格式,要在信息框內標記此微格式,則填寫以下參數:

|bodyclass = vcard

並為每一個包含了vcard所需資料單元的行添加相應的類參數:

|class1 = fn
|class2 = org
|class3 = tel

等等。用於顯示信息框主題的「above」和「title」也可以指定類。

請在Wikipedia:專題/微格式以獲取在維基百科添加微格式信息的進一步信息,訪問microformats.org網站亦能獲取更一般性的信息。

表格域可選項[編輯]

如果表格的一行只有標籤而沒有資料,那麼該行將不會顯示。這樣可以方便編者創建選填內容的行。要讓某行成為可選項,只需填寫一個默認為空字段的參數即可:

|label5 = 人口
|data5  = {{{population|}}}

這樣的話,如果在條目中不定義「population」參數,則信息框的那一行不會被顯示。

如果表格的一行填寫的是預設格式內容(即除了參數外,還有其他內容),而又希望讓該行成為可選項的話,你可以通過「#if」語句實現。當參數為空時,令所有的內容均不被呈現。譬如,在下面的例子里,「#if」會判斷參數「mass」是否不為空,若不為空則顯示它,並跟上「公斤」的後綴:

|label6 = 质量
|data6  = {{#if:{{{mass|}}} |{{{mass}}}千克}}

更多關於#if的用法,參見此處

你還可以通過相似的方法來讓頂欄也變為可選項。如果你希望頂欄只在其下方的某個或多個資料單元有內容時才顯示,以下的例子可以指導你如何實現:

{{Infobox
|name    = {{subst:PAGENAME}}
|title   = 可选顶栏的用例
|header1 = {{#if:{{{item_one|}}}{{{item_two|}}}{{{item_three|}}} |可选顶栏}}
|label2  = 项目一
|data2   = {{{item_one|}}}
|label3  = 项目二
|data3   = {{{item_two|}}}
|label4  = 项目三
|data4   = {{{item_three|}}}
}}

這樣,只有在參數「item_one」、「item_two」或「item_three」其中之一被填寫時,「header1」才會被顯示。如果上述三個參數均未被定義,則頂欄不會顯示。

其中的奧妙在於,只有在「item_one」、「item_two」和「item_three」均為空時,「#if」才會返回假值,其餘時候則均會返回真值「可選頂欄」。

用例[編輯]

測試信息框
200px
Caption for example.png
獨自定義的頂欄
獨自定義的資料
三項均有定義(頂欄)
標籤和資料有定義(標籤)標籤和資料有定義(資料)
下方文本
v · d · e
{{Infobox
|name         = Infobox/doc
|bodystyle    = 
|title        = 测试信息框
|titlestyle   = 
|image        = [[File:example.png|200px]]
|imagestyle   = 
|caption      = Caption for example.png
|captionstyle = 
|headerstyle  = background:#ccf;
|labelstyle   = background:#ddf;
|datastyle    = 

|header1 = 独自定义的顶栏
|label1  = 
|data1   = 
|header2 = 
|label2  = 独自定义的标签
|data2   = 
|header3 =
|label3  = 
|data3   = 独自定义的数据
|header4 = 三项均有定义(顶栏)
|label4  = 三项均有定义(标签)
|data4   = 三项均有定义(数据)
|header5 =
|label5  = 标签和数据有定义(标签)
|data5   = 标签和数据有定义(数据)

|belowstyle = background:#ddf;
|below = 下方文本
}}

注意到,當標籤脫離資料單元單獨定義時,所定義的那一行並未出現在信息框內;而當頂欄與標籤、資料定義在同一欄時,頂欄將會優先顯示。

在下面的例子中,定義了「bodystyle = width:20em;」和「labelstyle = width:33%;」。

測試信息框
標籤1資料1
標籤2資料2
標籤3資料3
頂欄4
標籤5資料5:嘰里呱啦稀里嘩啦。
下方文本
v · d · e

空白模板[編輯]

(備註:本模板目前最多可以同時處理80行表格,一般的信息框模板只會用到前20行的參數,因此此處省略了後60行的參數。需使用時可依此類推。微格式「class」參數亦被省略,因其不常被用到,使用時請自行添加。)

{{Infobox
|name         = {{subst:PAGENAME}}
|bodystyle    = 
|title        = 
|titlestyle   = 
|above        = 
|abovestyle   = 
|image        = 
|imagestyle   = 
|caption      = 
|captionstyle = 
|headerstyle  = 
|labelstyle   = 
|datastyle    = 

|header1  = 
|label1   = 
|data1    = 
|header2  = 
|label2   = 
|data2    = 
|header3  = 
|label3   = 
|data3    = 
|header4  = 
|label4   = 
|data4    = 
|header5  = 
|label5   = 
|data5    = 
|header6  = 
|label6   = 
|data6    = 
|header7  = 
|label7   = 
|data7    = 
|header8  = 
|label8   = 
|data8    = 
|header9  = 
|label9   = 
|data9    = 
|header10 = 
|label10  = 
|data10   = 
|header11 = 
|label11  = 
|data11   = 
|header12 = 
|label12  = 
|data12   = 
|header13 = 
|label13  = 
|data13   = 
|header14 = 
|label14  = 
|data14   = 
|header15 = 
|label15  = 
|data15   = 
|header16 = 
|label16  = 
|data16   = 
|header17 = 
|label17  = 
|data17   = 
|header18 = 
|label18  = 
|data18   = 
|header19 = 
|label19  = 
|data19   = 
|header20 = 
|label20  = 
|data20   = 

|belowstyle =
|below = 
}}

參見[編輯]