![]() | 此模板使用Lua语言: |
可用于生成信息栏,供用户使用 | 元模块,不应使用 | |||
---|---|---|---|---|
Module:Infobox3|main | $\Longleftarrow$
|
Template:Infobox3 | $\Longleftarrow$
|
Module:Infobox3Base |
Module:Infobox3|legacy | $\Longleftarrow$
|
Template:Infobox3/legacy | $\Longleftarrow$
|
Module:Infobox3Base/legacy |
体验新版样式 | 兼容{{信息栏2.0}} | |
---|---|---|
需要接收 前缀参数 |
Module:Infobox3|main | Module:Infobox3|legacy |
没有上述需求
|
Template:Infobox3 | Template:Infobox3/legacy |
::
而不是 =
来传递自定义参数在Infobox3里,不能像从前一样使用 =
传递自定义参数。原因有三:
在运营方出于另一些考虑不去修改Scribunto的情况下,萌娘百科编辑User:Liliaceae提出了这样一种解决方案(注)此方案在{{时间线}}中被首次采用:约定使用 ::
来分割键值对。这样,在视觉上它看似具名参数,但实际上传入的是匿名参数,键值的分割由模块完成。Infobox3采纳了这种方案。
示例:双冒号的使用¶ |
---|
{{Infobox3
|title = Infobox3
|image = MoegirlPedia-Title-green.svg
|size = 150px
|alt = 万物皆可萌,Variables除外
|-横栏1 :: 送杜少府之任蜀州
|_内容 :: 海内存知己,天涯若比邻。
|-横栏2 :: 横栏
|项目1 :: 内容1
|项目2 :: 内容2
|bottom = ヾ(≧▽≦*)o
}}
|
在此示例中,title
、image
等参数是模板内置的参数,不属于自定义参数,仍可使用=
;而-横栏1
等参数名是用户自定义的,因此需要使用::
传参。
考虑这个嵌入链条:
×××条目 | $\Longleftarrow$
|
Template:×××信息栏 | $\Longleftarrow$
|
(信息栏模板) |
为了更加灵活地使用信息栏,一些编者希望能够向Template:×××信息栏
传入一些以特定前缀开头的参数(例如相关人物-×××
),并让它们出现在指定位置。在过去,这一功能通过{{#forargs:
以一种巧妙的方式实现;在Variables被移除后,Infobox3内置了这一功能。
在Module:Infobox3中,只要传入形如*[前缀] :: [序号]
的参数,就可以接收第[序号]
个前缀参数。须注意:用户在Template:×××信息栏
传参时同样需要使用::
!
特别地,[前缀]
可以留空;而如果[序号]
是-1
,则接收所有相关前缀参数。
示例:接收前三个以相关人物- 为前缀的参数¶
|
---|
×××条目 姓名
企鹅 萌百娘
亲密无间的战友,共同跨越第二次WAF危机。 |
<!-- Template:×××信息栏 里的内容 -->
{{#invoke:Infobox3|main
|姓名 :: {{{姓名|}}}
|*相关人物- :: 1
|*相关人物- :: 2
|*相关人物- :: 3
}}
<!-- ×××条目 里的内容 -->
{{×××信息栏
|姓名 = 企鹅
|相关人物-萌百娘 :: 亲密无间的战友,共同跨越第二次WAF危机。
}}
|
参数 | 用途 | |
---|---|---|
class
|
信息栏的额外class
| |
m-style | m-style
|
信息栏整体样式,会覆盖默认样式及下述的四个参数 |
float
|
浮动方向,默认为right
| |
border
|
边框样式,默认为1px solid #D0D0D0
| |
m-width
|
宽度,默认为280px
| |
m-bcolor
|
背景颜色,默认为 #FAFAFA
| |
m-color
|
文字颜色,默认为 #222222
| |
notitle
|
notitle
|
参数不为空时,将不显示信息栏标题,将覆盖下面的title 参数
|
title 、标题
|
标题显示的内容,默认为当前页面名 | |
top-style
|
top-style
|
标题整体样式,会覆盖默认样式及下述的两个参数 |
top-bcolor
|
背景颜色,默认为 #6FC67E
| |
top-color
|
文字颜色,默认为 #FFFFFF
| |
image 、图片
|
需插入的图片,如Example.png ,默认为空
| |
size 、图片大小
|
图片宽度大小,默认为280px ,一一般无需修改
| |
alt 、图片信息 、图片说明
|
图片说明信息,显示于图片下方 | |
image-style
|
图片样式,会覆盖默认样式 | |
tabs
|
使用tabs切换图片,指定后将覆盖imge参数 | |
t-style
|
t-style
|
子标题样式,会覆盖默认样式及下述的两个参数 |
t-bcolor
|
背景颜色,默认为 #6FC67E
| |
t-color
|
文字颜色,默认为 #FFFFFF
| |
l-style
|
l-style
|
左栏样式,会覆盖默认样式及下述的三个参数 |
l-width
|
宽度,默认为5em
| |
l-bcolor
|
背景颜色,默认为 #E3F6E0
| |
l-color
|
文字颜色,默认为 #444444
| |
r-style
|
右栏样式,会覆盖默认样式 | |
i-style
|
独立内容栏样式 | |
bottom
|
底部栏 | |
b-style
|
底部栏样式 |
如果需要在条目中使用本模板并自定义项目,则需要将非#完整参数内提到的参数从=
变为::
进行分割。
示例:双冒号的使用¶ |
---|
{{Infobox3
<!-- 非自定义项目使用“=” -->
|title = 萌娘百科
|image = MoegirlPedia-Title-green.svg
<!-- 自定义项目使用“::” -->
|-横栏1 :: 几位萌娘 <!-- 以“-”开头可以自定义一个横栏 -->
|_内容 :: 萌百娘是萌娘 <!-- 以“_”开头可以自定义一个内容框 -->
|更新姬 :: 也是萌娘
}}
|
如果你希望你的模板允许在使用时添加自定义参数,那么请使用{{#invoke:Infobo3|main}}
替代,并在允许使用自定义项目的地方插入|*::-1
。以下是一个允许使用自定义项目的简单示例。
反例 |
---|
{{Infobox3 <!-- 需要添加自定义项目,所以应该使用模块而不是模板 -->
|image :: {{{image|}}} <!-- Infobox3中存在“image”这一参数,因此应该使用“=”连接,而不是“::” -->
|萌娘 :: {{{萌娘|}}} <!-- Infobox3中不存在“萌娘”这一参数,因此应该使用“::” -->
<!-- 注意,需要添加自定义项目的地方必须加上|*::-1,否则将无效! -->
}}
|
示例:一个正确的用法¶ |
---|
{{#invoke:Infobox3|main <!-- 使用模块以自定义项目 -->
|image = {{{image|}}} <!-- 非自定义参数使用“=” -->
|萌娘 :: {{{萌娘|}}} <!-- 自定义项目使用“::” -->
|*::-1 <!-- 条目调用该模板时,自定义的项目将被插入此处 -->
}}
|
假设上述的内容已被写入至{{MoeInfo}},那么我们就可以用以下方式在条目中使用该模板:
示例:条目中使用{{MoeInfo}}¶ |
---|
{{MoeInfo
|image = MoegirlPedia-Title-green.svg
|萌娘 = 萌百娘 <!-- 模板中已定义的项目可以使用“=” -->
|另一位萌娘 :: 更新姬 <!-- 模板没有自定义这个项目,所以需要用“::” -->
}}
|