模板:Infobox
目錄
Documentation[編輯]
- 這個說明來自於模板:Infobox/doc,請至另一頁面編輯。
模板: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 | |
獨自定義的頂欄 | |
---|---|
獨自定義的資料 | |
三項均有定義(頂欄) | |
標籤和資料有定義(標籤) | 標籤和資料有定義(資料) |
下方文本 | |
{{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:嘰里呱啦稀里嘩啦。 |
下方文本 | |
空白模板[編輯]
(備註:本模板目前最多可以同時處理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 = }}
參見[編輯]