打开/关闭菜单
打开/关闭外观设置菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

目前wiki关闭了自行注册账号的功能,如需注册账号,请查阅Help:注册账号

帮助:Wikitext

来自RIA | Wiki

wikitext维基文本,本站使用它来编排页面。Help:编辑页面包含查看和编辑页面源代码的方式。通常代码可以直接复制粘贴,无需编写新代码。

wikitext是一门可扩展轻量级标记语言,类似于Markdown。它比HTML更易学习和使用。

wikitext广泛使用于百科网站中,如维基百科Minecraft Wiki萌娘百科。宽泛地说,所有基于MediaWiki的网站都使用wikitext。

部分HTML元素也可编排页面,参阅Help:Wikitext中的HTMLProject:Wikitext备忘单有wikitext的简短列表和提示。

其他教程

其实很多地方都有wikitext教程,但这个轮子还是要造,虽然要造很久。

这里放一些收集到的wikitext教程。

  1. 1.0 1.1 1.2 需要较好网络环境

名词解释

序言是页面第一个2级标题前的内容。

布局

章节

章节标题

章节标题标记成对的等号(=)构成,共有6级。

页面有个标题,是以页面名自动生成的1级标题。不要在编辑中使用1级标题,从2级标题开始编排页面。其实很好理解,整个页面都是和页面名相关的内容,都在一个1级标题下,再放个就不对劲了。

  • 章节标题的样式由CSS指定,标题后会生成“[编辑]”链接。
  • 含有4个及以上标题的页面会自动生成目录。
  • 不要在标题代码一行内添加其他内容,这样标题会失效,或让章节标题无法自动添加到编辑摘要中。
源代码 显示
= 1级标题 =
== 2级标题 ==
=== 3级标题 ===
==== 4级标题 ====
===== 5级标题 =====
====== 6级标题 ======
1级标题
2级标题
3级标题
4级标题
5级标题
6级标题
== 这个标题 == 不会生效

== 这个标题 == 不会生效

在添加标题示例时使用{{Fake heading}}模板。

水平分隔线

水平分隔线代表段落级元素间的主题转换,比如故事中场景的改变、一章中主题的改变。使用时需斟酌。不要用它来分隔段落和下个标题。

源代码 显示
孝太郎只是轻轻一碰,由莉佳就应声倒下。

『她昏倒了?』

「真可怜,一定是被吓昏的。」

「没用的家伙……」

由莉佳难以承受静香带来的压力,就这样失去了意识。

----

在静香的主导之下,大家总算是达成了共识,同时也将共识诉诸书面文字。内容主要是借由和平的方法决定房间的所有人、不许破坏可乐娜庄、不许妨碍左邻右舍的安宁、不许将争执带出房间、入夜之后轻声细语……等项目。之后,他们将这份协议命名为《可乐娜陆战规定》。

孝太郎只是轻轻一碰,由莉佳就应声倒下。

『她昏倒了?』

「真可怜,一定是被吓昏的。」

「没用的家伙……」

由莉佳难以承受静香带来的压力,就这样失去了意识。


在静香的主导之下,大家总算是达成了共识,同时也将共识诉诸书面文字。内容主要是借由和平的方法决定房间的所有人、不许破坏可乐娜庄、不许妨碍左邻右舍的安宁、不许将争执带出房间、入夜之后轻声细语……等项目。之后,他们将这份协议命名为《可乐娜陆战规定》。

不要这样做!
源代码 显示
<big>一个伪标题</big>
----

一个伪标题


章节末尾
----

== 下一个章节标题 ==

章节末尾


下一个章节标题

等效HTML:<hr />(这个可以缩进,如* 第1部分 <hr /> 第2部分。而使用wikitext形式时,代码只能位于行首。)

目录

在页面至少有4个章节标题时,目录会自动生成在导言部分和首个章节标题之间。可以使用以下魔术字或模板控制目录:

  • __FORCETOC__:强制在正常位置显示目录,忽略标题数量。
  • __TOC__:强制在放置此魔术字的位置显示目录。
  • __NOTOC__:禁用目录。

换行符、段落

换行符指wikitext代码中的换行符,源代码编辑器中击↵ Enter键将插入换行符。

段落表示文章中相对独立的句子或句群,有相对完整的意思。排版中,段落间会留有空间。

  • 在代码中按两次↵ Enter,使前面的文本与后面的文本之间留有一空行,后面的文本将作为新段落。
  • 代码中换一次行通常不会在阅读时显示。显示时,上面一行的最后一字母后会有空格(汉字不会有)。
  • 粗体、斜体这类标记会在换行处中止。
源代码 显示
这里的一个换行符
对布局没有影响。

但是一个新段落,
或位于列表或缩进后的文本
会产生一个空行。

这里的一个换行符 对布局没有影响。

但是一个新段落, 或位于列表或缩进后的文本 会产生一个空行。

模板:{{Clear}}可以在指定位置将后续正常内容移动到浮动内容下方。

断行

断行是在段落中的某个位置插入的,阅读时可见的换行,断行后的文本与断行前的文本同属一个段落。断行可用于排版诗歌。使用<br />会在当前位置插入一个断行。为了源代码好看,可以在需要断行处换一次行,并将<br />标签放置在第一行末尾或第二行行首。

源代码 显示
银瓶乍破水浆迸,铁骑突出刀枪鸣。<br />
曲终收拨当心画,四弦一声如裂帛。<br />
东船西舫悄无言,唯见江心秋月白。

沉吟放拨插弦中,整顿衣裳起敛容。<br />
自言本是京城女,家在虾蟆陵下住。<br />
十三学得琵琶成,名属教坊第一部。

银瓶乍破水浆迸,铁骑突出刀枪鸣。
曲终收拨当心画,四弦一声如裂帛。
东船西舫悄无言,唯见江心秋月白。

沉吟放拨插弦中,整顿衣裳起敛容。
自言本是京城女,家在虾蟆陵下住。
十三学得琵琶成,名属教坊第一部。

缩进文本

增加文本到页面一侧的距离(在从左往右书写的语言中是左边),一般用在讨论页。

wikitext中,一般缩进方发“借用”了描述(<dd>)的标记,这种方法不能通过HTML验证,但大家都这样用。

源代码 显示
缩进一般使用于讨论页:
: 每个冒号都在一行的最前面。
:: 增加该行的缩进级别。
::: (只要不在编辑中换行,缩进就会继续。)
::: 缩进需要换行时,在新行文本前添加与前一行相同数量的冒号。
::: <p>或者这样</p><p>(如果是为了起新段落而换行)</p>
:::: 每个回复都应添加一个冒号。
::::: 依此类推…
:::::: 等等…
{{outdent|::::::}} 重置缩进(这里是6层)

缩进一般使用于讨论页:

每个冒号都在一行的最前面。
增加该行的缩进级别。
(只要不在编辑中换行,缩进就会继续。)
缩进需要换行时,在新行文本前添加与前一行相同数量的冒号。

或者这样

(如果是为了起一个新段落而换行)

每个回复都应添加一个冒号。
依此类推…
等等…
重置缩进(这里是6层)

模板:{{Outdent}}可重设缩进。

块引用

块引用可指示文本来自其他文章。

源代码 显示
正文…
<blockquote>
'''blockquote'''标签会往页面两边添加边距,而冒号只会从左侧缩进。

块引用左边也会有一条浅灰色装饰线。
</blockquote>
正文…

正文…

blockquote标签会往页面两边添加边距,而冒号只会从左侧缩进。

块引用左边也会有一条浅灰色装饰线。

正文…

居中内容

源代码 显示
<div class="center" style="margin-left: auto; margin-right: auto; width: auto;">居中文本</div>
居中文本

一般来说,不需在条目中居中文本,除非你要整点排版花活。上方代码生成的盒子边框贴着文本。如果只需要居中文本,可使用下方代码:

源代码 显示
<div style="text-align: center;">居中文本</div>
居中文本

不要过时的使用<center>…</center>

右对齐文本

在单独的容器里包含右齐文本:

源代码 显示
<div style="direction: ltr; text-align: right;">右对齐的文本</div>

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

右对齐的文本

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

或者让文本向右浮动,正常文本环绕着它:

源代码 显示
<div class="floatright">向右浮动的文本</div>

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

向右浮动的文本

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

列表

MediaWiki软件将列表项间的空行理解为当前列表的末尾,所以请不要在同一列表的列表项之间留空。

无序列表

前面有小圆点(或其他形状)的列表,在项目顺序不重要时使用。

源代码 显示
* 项 1
* 项 2
* 项 3
* 项 4
** 子项 4 a)
*** 子项 4 a) 1.
**** 子项 4 a) 1. i)
**** 子项 4 a) 1. ii)
** 子项 4 b)
* 项 5
  • 项 1
  • 项 2
  • 项 3
  • 项 4
    • 子项 4 a)
      • 子项 4 a) 1.
        • 子项 4 a) 1. i)
        • 子项 4 a) 1. ii)
    • 子项 4 b)
  • 项 5

HTML标记:

<ul>
  <li>项 1</li>
  <li>项 2</li>
  <li><ul>
    <li>项 2.1</li>
    <li>项 2.2</li>
  </ul></li>
  <li>项 3</li>
</ul>

有序列表

源代码 显示
# 项 1
# 项 2
# 项 3
# 项 4
## 子项 4.1
### 子项 4.1.1
#### 子项 4.1.1.1
## 子项 4.2
# 项 5
  1. 项 1
  2. 项 2
  3. 项 3
  4. 项 4
    1. 子项 4.1
      1. 子项 4.1.1
        1. 子项 4.1.1.1
    2. 子项 4.2
  5. 项 5

HTML标记:

<ol>
  <li>项 1</li>
  <li>项 2</li>
  <li><ol>
    <li>项 2.1</li>
    <li>项 2.2</li>
  </ol></li>
  <li>项 3</li>
</ol>

描述列表

将分号(;)放在行首,后跟术语,后面放一个半角冒号(:),后跟术语的描述或定义,就能创建一段描述列表。这种格式也可用于其他场景,如载具的各种型号。

描述列表由组名和其所对的值组成。组名(术语)为粗体,值(描述)向右缩进。每组列表必须包含一或多条描述。如果只有术语一条描述,分号和冒号可以放在同一行(行首为分号,冒号前是术语,冒号后是描述)。但如果有多条描述,则每条描述都得放在单独的一行,行首为半角冒号。

不要使用分号加粗一整行,否则,页面将无法通过HTML5验证,屏幕阅读器读取页面时也会出现问题。使用冒号缩进也有这样的问题,所以仅应在讨论页使用。

源代码 显示
; 项目 : 描述
项目
描述
; 项目 1
: 描述 1.1
: 描述 1.2
: 描述 1.3
; 项目 2
: 描述 2.1
: 描述 2.2

; 另外的一个列表
: 描述 β1.1
: 描述 β1.2
项目 1
描述 1.1
描述 1.2
描述 1.3
项目 2
描述 2.1
描述 2.2
另外的一个列表
描述 β1.1
描述 β1.2

HTML标记:

<dl>
  <dt>项目 1</dt>
  <dd>描述 1.1</dd>
  <dd>描述 1.2</dd>
  <dt>项目 2</dt>
  <dd>描述 2.1</dd>
  <dd>描述 2.2</dd>
</dl>

格式

格式化文本

描述 输入 输出
斜体、粗体
''斜体''标记的两边有2个直引号。

'''粗体'''有3个。

放上5个(斜体2个,粗体3个)会产生'''''粗斜体'''''。

这些标记在换行时停结束,所以一对需要放在同一行。

在文本两边放上2个连续直引号将文本变为斜体

两边放3个直引号则会加粗文本。

放上5个(斜体2个,粗体3个)会产生粗斜体

这些标记在换行时停结束,所以一对需要放在同一行。

正常文本内的小型代码区块。

代码会用等宽字体显示。

函数<code>int m2()</code>是好的。
函数int m2()是好的。
小型文本,用来标记正常文本之间的小注释。
仅在必要时使用<small>小型文本</small>。

使用Minerva Neue皮肤(移动端默认)时,文本大小与周围的文本相同。

仅在必要时使用小型文本

使用Minerva Neue皮肤(移动端默认)时,文本大小与周围的文本相同。

大型文本。<big>…</big>HTML规范中删除,请勿使用。
不要使用<big>大型文本</big>!

使用Minerva Neue皮肤(移动端默认)时,文本大小与周围的文本相同。

不要使用大型文本

使用Minerva Neue皮肤(移动端默认)时,文本大小与周围的文本相同。

更改文本大小
{{tl|Resize}}模板提供了更加灵活、无关语义的更改文本尺寸方法。
* 这里将文本尺寸变得{{resize|larger|更大}};
* 也可以变得{{resize|smaller|更小}};
* 或者说,指定一个{{resize|80%|百分比}};
* 设置为周围文本的{{resize|0.8em|几倍}};
* 指定一个{{resize|20px|实际尺寸}};

{{Resize}}模板提供了更加灵活、无关语义的更改文本尺寸方法。

  • 这里将文本尺寸变得更大
  • 也可以变得更小
  • 或者说,指定一个百分比
  • 设置为周围文本的几倍
  • 指定一个实际尺寸
页面不会在不换行空格处换行,可以用来处理单词。也可以用{{Nowrap}}模板,在单词较多时会更方便。
Mr.&nbsp;Smith或400&nbsp;km/h
Mr. Smith或400 km/h
上标与下标
有时候需要用到上下标,比如M<sup>me</sup> Denise、CH<sub>4</sub>。
有时候需要用到上下标,比如Mme Denise、CH4

特殊字符

特殊字符可以使用字符值引用字符实体引用添加。参见HTML的字符编码获取更多信息。举例来说:&Agrave;&#xC0;都会显示为À沉音A)。无法使用百分号编码,它只能在URL里使用。

也可以用编辑器的“特殊字符”面板添加,或从外部(像SYMBL这样的网站)复制到页面中。

链接和URL

wiki链接

wikitext中,在页面之间生成内部链接的标记就是wiki链接。把需要创建链接的字词用中括号([[…]])括起来就能创建这种链接,链接目标就是以该词作为标题的页面。[[鳕鱼贫鸟居]]会显示为鳕鱼贫鸟居

可以使用竖线(|)设置链接显示文本。举例来说,[[TsanconBYin|必应]]会显示为必应,链接显示的文本为“必应”,而实际指向TsanconBYin

链接至另一wiki条目

  • 在页面标题中,标题的首字母会自动大写,下划线(_)在URL中代表空格(可以理解为标题中,空格储存为下划线)。因此在链接中,无论首字母大小写,或使用空格/下划线,链接目标都是同一个。
  • 因此,下面链接指向网址https://wiki.ria.red/wiki/Zth_Plus,是wiki中题为Zth Plus的条目。
  • 红链指向还不存在的页面,点击该链接可创建页面。
  • 目标为当前页面的链接仅会显示为粗体,没有链接效果。
源代码 显示
[[Zth Plus]]是以前用高版本Minecraft加入服务器的一种手段。

Zth Plus是以前用高版本Minecraft加入服务器的一种手段。

指向本页面的链接“[[Help:Wikitext]]”仅会显示为粗体,没有链接效果。

指向本页面的链接“Help:Wikitext”仅会显示为粗体,没有链接效果。

设置显示文本

  • 显示文本不同,链接目标不变。
  • 链接目标放在竖线,显示文本放在竖线
源代码 显示
在服务器支持多版本加入前,很多人使用[[Zth Plus|这个工具]]来加入服务器。

在服务器支持多版本加入前,很多人使用这个工具来加入服务器。

自动重命名链接

一些情况下,在链接代码后加入竖线(|)可以自动设置链接显示文本。在保存编辑后,这些链接的源代码会自动替换为标准的重命名格式。

描述 输入 显示
自动移除括号里的内容 [[奈落洲 (新洲)|]] 奈落洲
自动移除逗号后的内容,中文很少用。 [[Seattle, Washington|]] Seattle
自动移除命名空间 [[Project:可视化编辑器|]] 可视化编辑器
全部移除 [[Module:Sandbox (REV)|]] Sandbox
章节链接中不可使用自动重命名 [[Project:收录范围#聚落|]] [[Project:收录范围#聚落|]]

链接到页面的特定章节

  • 井号(#)后的部分必须匹配目标页面的章节标题或锚点之一。匹配项必须在拼写、大小写和标点等方面准确无误。目标不存在的链接依然可用,它们指向页面顶部。
  • 与一般内链一样,可以使用竖线(|)更改链接显示文本。
  • 如果章节有相同的标题,在链接的标题部分后添加数字(除了目标是首个使用此名称的章节)可将目标更改为特定位置的章节。#示例 3的目标是第3个以“示例”作为标题的章节。
输入 显示
链接到其他页面的某个章节:[[Template:Plainlist#使用]] 链接到其他页面的某个章节:Template:Plainlist#使用
链接到本页面的其他章节:[[#链接和URL]];相同链接但移除了井号:[[#链接和URL|链接和URL]]。 链接到本页面的其他章节:#链接和URL。相同链接但移除了井号:链接和URL
改变显示文本:[[Template:Plainlist#使用|Plainlist模板的使用方式]] 改变显示文本:Plainlist模板的使用方式

使用链接创建页面

创建页面时:

  1. 在其他相关页面创建到新页面的链接;
  2. 保存更改;
  3. 点击刚刚创建的链接,开始编写新页面。

不推荐创建没有指向该页面的链接的页面,这样读者就只能通过搜索或找网址来找到页面了。

描述 输入 显示
以不存在的页面作为目标的链接是红色的。 还不存在关于[[鱼子的玩家观察手记3]]的条目。 还不存在关于鱼子的玩家观察手记3的条目。

重定向

重定向是将访问一个页面的读者转移到另一个页面的操作(比如北溟会重定向到北溟神社)。在页面顶部放置像#REDIRECT [[目标页面]]#重定向 [[目标页面]]这样的指令来创建重定向。也可以重定向到页面的特定章节,比如#REDIRECT [[抹岚#历史]]会指向条目“抹岚”的“历史”一节(如果该章节存在)。

描述 源代码
重定向到页面 #REDIRECT [[抹岚]]
重定向到特定章节 #REDIRECT [[抹岚#历史]]

链接到其他命名空间

在设置目标时使用页面全名就行了。

输入 显示
参见[[Project:收录范围]]。 参见Project:收录范围

跨wiki链接

跨wiki链接可以快速添加指向常用网站的链接。此功能由Extension:Interwiki扩展实现(其实这就是个跨wiki链接)。虽然叫跨wiki链接,但其实可以支持所有有固定网址格式的站点。

跨wiki链接也是在第一个冒号(:)处将设置的链接目标切开:前面是跨wiki前缀,指示链接指向哪个站点;后面的是具体的页面。

跨wiki前缀由wiki自行设定,站点的跨wiki表列出了所有前缀所代表的站点。

跨wiki链接的语法与普通内链相似,都是使用两对中括号。

普通跨wiki链接
描述 输入 显示
简单链接 [[mcwiki:草方块]] mcwiki:草方块
无前缀 [[mcwiki:草方块|]] 草方块
设置显示文本 [[mcwiki:草方块|Minecraft Wiki中的“草方块”]] Minecraft Wiki中的“草方块”
甚至链接到别的语言 [[mcwiki:en:Grass_Block]] mcwiki:en:Grass_Block

外部链接

wikitext中,一对中括号代表外链。与内链不同,外链用空格(内链是竖线 |)分隔链接目标和显示文本。

链接必须以受支持的协议打头:https://(优先使用)和http://受所有浏览器支持;irc://ircs://ftp://news://mailto:gopher://需要安装插件或外部应用。链接暂时不支持IPv6地址。

描述 输入 显示
默认外链后面会跟着外链图标 [https://ria.red RIA官网] RIA官网

编号外链

会在页面中编号,你不会用这个的。

[https://ria.red] [1]

自由链接

使用<nowiki>…</nowiki>保持未链接状态。

https://ria.red https://ria.red
没有图标的外链 <span class="plainlinks">[https://ria.red RIA官网]</span> RIA官网

杂项

媒体链接

直接链接到文件(不是wiki分配给文件的页面)可以使用媒体链接。

输入 显示
[[Media:Example.png]] Media:Example.png

直接编辑页面的链接

使用一些技巧可以快速创建页面编辑链接。

输入 显示
[{{fullurl:帮助:Wikitext|action=edit 编辑本页}}] 编辑本页
[[Special:EditPage/帮助:Wikitext|编辑本页]] 编辑本页

图像

图像位于文件(File)命名空间。只能使用上传到wiki里的图像。可以在所有文件中寻找图像,或在文件列表新文件图库中查看最新上传的图像。

wiki支持的文件类型有JPGE(.jpg、.jpeg)(不包括JPEG 2000与JPEG XL),GIF(.gif),PNG(.png),WebP(.webp)与SVG(.svg)。

图像语法

wikitext中,图像的写法很像链接:

[[File:文件名.扩展名|参数|描述]]

参数可以有任意个,以竖线(|)分隔。 例子:[[File:Example.png|thumb|250px|示例图像],“thumb”、“250px”是参数,“示例图像”是描述。

图像参数一览

格式参数:控制图像按哪种方式显示。可以是空、“frameless”(无框)、“frame”(有框)和“thumb”(缩略图)。默认格式与“frameless”后可添加“border”参数,来为图像加一个浅灰小边框。具体参考#图像格式一节。

尺寸参数:调整图像的大小。对于位图,图像不能超过它的原始大小。比如一张800×600px的位图图像,调整尺寸时不能将宽度放大到1200px。

  • wpx(比如250px):以设定尺寸为最大宽度调整图像,高度按比例缩放。
  • xhpx(比如x400px):以设定尺寸为最大高度调整图像,宽度按比例缩放。
  • wxhpx(比如300x200px):以设定尺寸中最小的为最大宽度(w,x前面)或最大高度(h,x后面)调整图像,另一方向上按比例缩放。
  • upright:只能用于“thumb”或“frameless”格式。指用户偏好缩略图宽度的几倍,在参数设置中调整,默认为300px。比如,|upright=1.5是偏好宽度的1.5倍。只写|upright,不带等号和倍数,图像宽度会设为偏好宽度的0.75倍(|upright=0.75)。

图像不应过宽(最好在400px以内)。过宽的图像会导致图像溢出页面。

水平对齐与浮动参数:可以是“none”(无浮动)、“left”(向左浮动)、“center”(居中)、“right”(向右浮动),没有默认值。不同格式下,显示效果可能不同。具体参考#水平位置和浮动一节。

行内对齐参数:调整显示在文本中间的图像的对齐位置。可以是“top”、“text-top”、“super”、“middle”(默认值)、“baseline”、“sub”、“text-bottom”、“bottom”之一。相当于CSS vertical-align属性

链接参数:调整图像链接目标。点击图像默认会跳转到文件页面。设置|link=链接目标可调整目标。比如:|link=Project:首页会跳转到Project:首页。将目标留空|link=会禁用链接。

替代文本参数:无法显示图像时显示的文本。参数形为|alt=替代文本。下载图像时断网,禁用图像显示,使用屏幕阅读器都会显示这个文本。就是HTML <img />元素的alt属性。一般用户看不见,所以不应和图像描述混淆,或使用同一文本。

HTML类参数:添加到图像<img />元素中的HTML类。参数形为|class=类。MediaWiki 1.40以上(我们wiki是1.39)会添加<img />元素上级的<span>…</span>元素中。

图像格式

下面是不同格式显示的样子。

基本图像

默认格式的图像是嵌入在正常文本中的。设置的描述将作为图像的工具提示。

关关雎鸠,在河之洲。[[File:Material Design icon Aunst merge.svg|示例图像]]窈窕淑女,君子好逑。

关关雎鸠,在河之洲。示例图像窈窕淑女,君子好逑。

将鼠标移动到图像上,可以看见设置的描述。Vector皮肤中,这种格式会以原始宽度显示图像,可能导致溢出。一般来说,如果需要展示大图,不显示描述,可以使用这种格式;文本中的图像也使用这种格式。

有框架图像

有框架图像会将描述显示在图像下方,并用把它俩用一个框括起来。格式名为“frame”或“有框”。

关关雎鸠,在河之洲。[[File:Material Design icon Aunst merge.svg|frame|示例图像]]窈窕淑女,君子好逑。

关关雎鸠,在河之洲。

示例图像

窈窕淑女,君子好逑。

Vector皮肤中,这种图像浮动在页面右侧。它也是以原始宽度显示图像,可能导致溢出。一般来说,如果需要展示大图并显示描述,可以使用这种格式。

图像本身不在文本中间,所以更推荐单独起一行:

关关雎鸠,在河之洲。
[[File:Material Design icon Aunst merge.svg|frame|示例图像]]
窈窕淑女,君子好逑。

无框架图像

无框架图像会以缩略图宽度显示图像。图像嵌入在正常文本中。设置的描述将作为图像的工具提示。格式名为“frameless”或“无框”

关关雎鸠,在河之洲。[[File:Example-w4h3.svg|frameless|示例图像]]窈窕淑女,君子好逑。

关关雎鸠,在河之洲。示例图像窈窕淑女,君子好逑。

这张图像的原始尺寸为800×600px,这里宽度缩小到了300px(如果你没改过相关设置)。

缩略图

缩略图以缩略图宽度显示图像,描述显示在图像下方,并用把它俩用一个框括起来。格式名为“thumb”“thumbnail”或“缩略图”。

关关雎鸠,在河之洲。
[[File:Example-w4h3.svg|thumb|示例图像]]
窈窕淑女,君子好逑。

关关雎鸠,在河之洲。

示例图像

窈窕淑女,君子好逑。

Vector皮肤中,这种图像浮动在页面右侧。

有边框的图像

在基本图像或有无框图像(frameless)后添加“border”可以给图像外部添加1px的浅灰边框。

带边框的基本图像:

[[File:Material Design icon Aunst merge.svg|border|示例图像]]
示例图像
示例图像

带边框的无框图像:

[[File:Material Design icon Aunst merge.svg|frameless|border|示例图像]]
示例图像
示例图像

水平位置与浮动

默认情况下(不设置位置参数),各类格式的位置、浮动情况各不相同。

图像格式和默认位置、浮动情况
格式 位置、浮动情况
(默认) 无浮动,嵌入在文本中
有框(frame) 向右浮动
无框(frameless) 无浮动,嵌入在文本中
缩略图(thumb) 向右浮动

设置了水平位置的图像要么是单独占一行,要么是浮动的,所以代码上都可以单独起一行写。

将水平位置参数设置为“none”会禁用浮动,图像也不会嵌入文本中(因为这时图像包含在一个<div>…</div>块中),所有图像都会显示在下一行开头。

关关雎鸠,在河之洲。
[[File:Material Design icon Aunst merge.svg|none|示例图像]]
窈窕淑女,君子好逑。

关关雎鸠,在河之洲。

示例图像
示例图像

窈窕淑女,君子好逑。

关关雎鸠,在河之洲。
[[File:Material Design icon Aunst merge.svg|frame|none|示例图像]]
窈窕淑女,君子好逑。

关关雎鸠,在河之洲。

示例图像

窈窕淑女,君子好逑。

如果想防止内容乱跑,可以禁用浮动。在为图像编写CSS时禁用浮动会很有用。

“center”将图像水平居中。

关关雎鸠,在河之洲。
[[File:Material Design icon Aunst merge.svg|center|示例图像]]
窈窕淑女,君子好逑。

关关雎鸠,在河之洲。

示例图像
示例图像

窈窕淑女,君子好逑。

关关雎鸠,在河之洲。
[[File:Material Design icon Aunst merge.svg|frame|center|示例图像]]
窈窕淑女,君子好逑。

关关雎鸠,在河之洲。

示例图像

窈窕淑女,君子好逑。

“left”和“right”将图像向左或向右浮动。

左浮动:

关关雎鸠,在河之洲。
[[File:Material Design icon Aunst merge.svg|left|示例图像]]
窈窕淑女,君子好逑。

关关雎鸠,在河之洲。

示例图像
示例图像

窈窕淑女,君子好逑。

关关雎鸠,在河之洲。
[[File:Material Design icon Aunst merge.svg|frame|left|示例图像]]
窈窕淑女,君子好逑。

关关雎鸠,在河之洲。

示例图像

窈窕淑女,君子好逑。

右浮动:

关关雎鸠,在河之洲。
[[File:Material Design icon Aunst merge.svg|right|示例图像]]
窈窕淑女,君子好逑。

关关雎鸠,在河之洲。

示例图像
示例图像

窈窕淑女,君子好逑。

关关雎鸠,在河之洲。
[[File:Material Design icon Aunst merge.svg|frame|right|示例图像]]
窈窕淑女,君子好逑。

关关雎鸠,在河之洲。

示例图像

窈窕淑女,君子好逑。

垂直对齐

垂直对齐是基于周围文本的,因此,只有嵌入式图像——基本图像和无框图像(frameless)能更改垂直对齐。参数值可以是“top”、“text-top”(文本顶部)、“super”(上标基线)、“middle”(默认值)、“baseline”(基线)、“sub”(下标基线)、“text-bottom”(文本底部)、“bottom”。相当于CSS vertical-align属性。除了默认的“middle”居中外,用得比较多的是“text-top”和“text-bottom”。只放示例。为了方便阅读,标出了文本顶部与底部的装饰线。

对齐文本顶部:

其他文本……

[[File:OOjs_UI_icon_notice-progressive.svg|alt=|text-top|24px]]提示:有人在这里写了什么。

其他文本……

提示:有人在这里写了什么。

对齐文本底部:

其他文本……

[[File:OOjs_UI_icon_notice-progressive.svg|alt=|text-bottom|24px]]提示:有人在这里写了什么。

其他文本……

提示:有人在这里写了什么。

调整图像尺寸

图像尺寸通过单独的参数调整。可以设置图像的最大宽度、最大高度,或者是用户偏好宽度的几倍。位图(JPEG、PNG、GIF、WebP等)的尺寸不能比它的原始尺寸大。调整尺寸后,图像的长宽比不变。

下例中,图像的原始尺寸为800×600px(4:3)。为了方便,这里使用缩略图,并设置为无浮动。

设置最大宽度:

[[File:Example-w4h3.svg|thumb|none|300px|示例图像]]
示例图像

这里的宽度设置为300px,所以高度为225px。

设置最大高度:

[[File:Example-w4h3.svg|thumb|none|x200px|示例图像]]
示例图像

200px前面的“x”代表这个200px是最大高度。最大高度为200px,所以宽度为267px(266.66…四舍五入)。

也可以同时设置最大宽度与最大高度,图像会使用较小那个。

[[File:Example-w4h3.svg|thumb|none|280x180px|示例图像]]
示例图像

“x”前面是最大宽度,后面是最大高度。如果以280px为宽度,对应的高度为210px,大于设置的最大高度180px。于是,最大高度为较小的180px,对应的宽度为240px。

可以用用户的偏好缩略图宽度的倍数来设置图像宽度。这个值可以在参数设置里改,默认情况下为300px。图像参数中的“upright”是指偏好参数的几倍。

[[File:Example-w4h3.svg|thumb|none|upright=0.75|示例图像]]
示例图像

将宽度调整为偏好宽度的0.75倍,即225px,对应的高度为169px(168.75)。不知道为啥,这张图是230×173px。

图像宽度最好不要超过400px,否则在小屏幕上容易溢出页面。设置的尺寸是否生效也依赖你使用的皮肤,比如Minerva Neue皮肤的缩略图中,除upright外,设置的尺寸都不会生效。

图像链接

图像有个超链接,默认指向它的描述页。通过“link”参数可以更改超链接目标,或者禁用超链接。

调整链接目标:

这张图像指向wiki的首页:[[File:OOjs_UI_icon_link-ltr.svg|24px|link=Project:首页|链接图标]]

这张图像指向wiki的首页:链接图标

可以使用页面全名链接到wiki页面,也可以用外链,需要包含方案(“https://”啥的)。

不填写值可以禁用链接:

这张图像链接呢?[[File:OOjs_UI_icon_link-ltr.svg|24px|link=|链接图标]]

这张图像链接呢?链接图标

缩略图的描述右侧有个图标(小长方形叠在大长方形上),也是指向文件描述页的。更改图像链接目标后,图像本身指向修改后的目标,但图标还是指向文件描述页。

[[File:OOjs_UI_icon_notice-progressive.svg|thumb|none|80px|link=Project:首页|很好看的提示图标]]
很好看的提示图标

替代文本

网页里的图像有个替代文本属性(alt属性),正常情况下不显示,但无法看见图像的人能够看到,可能是因为加载图像时断网了,用户为了节省流量禁用了图像,或者用户在使用屏幕阅读器。MediaWiki的图像可以用“alt”参数设置替代文本。

[[File:Example-w4h3.svg|thumb|none|alt=一张有樱桃色边框的绘图。右上角是樱桃色的莉亚代表标识——等腰直角三角形,右上角掏了个圆孔。绘图中部偏上有两根横向色条,第1根模拟的OKLCH色相条,色度为0.11,亮度为0.7。第2根模拟的OKLCH亮度条,色度为0(黑-灰-白)。绘图左下角写了图像标题“示例图像”与英文“Example Image”,右下角有各种颜色的长方形组成的装饰长方形,最外侧是樱桃色边框,不同颜色的长方形以樱桃色线分隔开。]]
一张有樱桃色边框的绘图。右上角是樱桃色的莉亚代表标识——等腰直角三角形,右上角掏了个圆孔。绘图中部偏上有两根横向色条,第1根模拟的OKLCH色相条,色度为0.11,亮度为0.7。第2根模拟的OKLCH亮度条,色度为0(黑-灰-白)。绘图左下角写了图像标题“示例图像”与英文“Example Image”,右下角有各种颜色的长方形组成的装饰长方形,最外侧是樱桃色边框,不同颜色的长方形以樱桃色线分隔开。
一张示例图像

不要让标题和替代文本完全相同,因为这样读者会先看见一次替代文本,再看见完全相同的标题。上例的替代文本似乎太繁琐了,怎么说呢,如果你觉得图像描述已经可以给看不见图像的用户提供足够信息了,那就不用添加替代文本。更多信息可参考MDN网页图片教程的备选文本一节。

图像最佳实践

缩略图是最通用的格式

单独展示图像时,缩略图能应付多数情况。

前面的话……

[[File:Example-w4h3.svg|thumb|无关的示例图像]]

后面的话……

凡是到过中南兄弟民族地区住过一阵的人,对于当地人民最容易保留到印象中的有两件事:即“爱美”和“热情”。“爱美”表现于妇女的装束方面特别显著。使用的材料,尽管不过是一般木机深色的土布,或格子花,或墨蓝浅绿,袖口裤脚多采用几道杂彩美丽的边缘,有的是别出心裁的刺绣,有的只是用普通印花布零料剪裁拼凑,加上个别的风格的绣花围裙,一条手织花腰带,穿上身就给人一种健康、朴素、异常动人的印象。再配上些飘乡银匠打造的首饰,在色彩配合上和整体效果上,真是和谐优美。并且还让人感觉到,它反映的不仅是个人爱美的情操,还是这个民族一种深厚悠久的文化。

无关的示例图像

这个区域居住的三十多万苗族,除部分已习用汉文,本族还无文字。“热情”多表现于歌声中。任何一个山中地区,凡是有村落或开垦过的田土地方,有人居住或生产劳作的处所,不论早晚都可听到各种美妙有情的歌声。当地按照季节敬祖祭神必唱各种神歌,婚丧大事必唱庆贺悼慰的歌,生产劳作更分门别类,随时随事唱着各种悦耳开心的歌曲。至于青年男女恋爱,更有唱不完听不尽的万万千千好听山歌,即或是行路人,彼此漠不相识,有的问路攀谈,也是用唱歌方式进行的。许多山村农民和陌生人说话时,或由于差涩,或由于窘迫,口中常疙疙瘩瘩,辞难达意。如果换个方法,用歌词来叙述,即物起兴,出口成章,简直是个天生诗人。每个人似乎都有一种天赋,一开口就押韵合腔。刺绣挑花艺术限于女人,唱歌却不拘男女,本领都高明在行。

图像位于第一段下,也就浮动在第二段的右侧。使用缩略图的好处有:图像描述会显示出来;方便;只要不改尺寸,原始图像很大时也不会溢出;wiki会自动缩放图像,缩略图提供的是没那么清晰的小图像,提升加载速度。

清除浮动

有时会希望一部分内容不进入浮动的图像旁边,特别是图像向左浮动时。{{Clear}}模板可以解决此问题。

未清除浮动:

上方文本……

[[File:Example.png|thumb|left|无关的示例图像]]
图像旁边的文本……

== 一个标题 ==
不是,这玩意怎么也到图像那里了?

上方文本……

无关的示例图像,反正不是豆汁

首先让我提起“豆汁”。绿豆渣发酵后煮成稀汤,是为豆汁,淡草绿色而又微黄,味酸而又带一点霉味,稠稠的,混混的,热热的。佐以辣咸菜,即棺材板切细丝,加芹菜梗,辣椒丝或末。有时亦备较高级之酱菜如酱萝卜酱黄瓜之类,但反不如辣咸菜之可口,午后啜两三碗,愈吃愈辣,愈辣愈喝,愈喝愈热,终至大汗淋漓,舌尖麻木而止。北平城里没有不嗜豆汁者,但一出城则豆渣只有喂猪的份,乡下人没有喝豆汁的。外省人居住北平三二十年往往不能养成喝豆汁的习惯,能喝豆汁的人才算是真正的北平人。

一个标题

不是,这玩意怎么也到图像那里了?

使用{{Clear}}模板清除浮动:

上方文本……

[[File:Example.png|thumb|left|无关的示例图像]]
图像旁边的文本……
{{Clear}}

== 一个标题 ==
这下舒服了。

上方文本……

无关的示例图像,反正不是豆汁

首先让我提起“豆汁”。绿豆渣发酵后煮成稀汤,是为豆汁,淡草绿色而又微黄,味酸而又带一点霉味,稠稠的,混混的,热热的。佐以辣咸菜,即棺材板切细丝,加芹菜梗,辣椒丝或末。有时亦备较高级之酱菜如酱萝卜酱黄瓜之类,但反不如辣咸菜之可口,午后啜两三碗,愈吃愈辣,愈辣愈喝,愈喝愈热,终至大汗淋漓,舌尖麻木而止。北平城里没有不嗜豆汁者,但一出城则豆渣只有喂猪的份,乡下人没有喝豆汁的。外省人居住北平三二十年往往不能养成喝豆汁的习惯,能喝豆汁的人才算是真正的北平人。

一个标题

这下舒服了。

宽图像处理

相信各位都会有“哎哟,我要在页面里加张大美图!”的需求,但图像太宽了又会溢出,怎么办呢?

偏商务的方法(?)是使用基本图像格式,将图像设置为无浮动,并在外面套一个带水平滚动条的<div>…</div>

<div style="max-width: 100%; overflow-x: auto;">
[[File:Example-w4h3.svg|1200px|无关的示例图像]]
</div>

无关的示例图像

如你所见,其实不是很优雅。

于是出现了{{fluid image}}模板,它会自动检测剩余宽度,并将图像填满。

{{fluid image|Example-w4h3.svg||无关的示例图像}}
无关的示例图像
无关的示例图像

变更窗口大小时,图像尺寸也会跟着变。Wow,太智能了!

表格

可以使用wikitext构建表格。

表格基本标记

表格的基本标记
元素 wikitext 需求 使用提示
表格开始 {| 必需
标题 |+ 可选 放在表格开始标记的下面一行
|- 可选 第一行可以省略不写
表头单元格 !!! 可选

一行可以写出多个连续单元格,将!放在行首,以!!分隔单元格。

也可以将每个单元格放在单独的一行中,将!放在行首,后跟内容。

数据单元格 ||| 可选

一行可以写出多个连续单元格,将|放在行首,以||分隔单元格。

也可以将每个单元格放在单独的一行中,将|放在行首,后跟内容。

|也用来分隔表格的HTML属性与内容。

表格结束 |} 必需

HTML属性

表格元素很多时候需要添加属性,wikitext提供了方法。

单元格和标题(|||!!!|+)有内容,因此需要使用竖线符号(|)分隔属性与内容。

表格和行({||-)标记不直接保存内容,属性直接加在标记后,不使用|

表格常用属性包括class(特别是class="wikitable",大多数表格的样式);添加CSS的style;设置表头归属的scope;让单元格跨行的rowspan;让单元格跨列的colspan

简单表格示例

{| class="wikitable"
  |+ 表格标题
  |-
  ! scope="col" | 年份
  ! scope="col" | 数据1
  ! scope="col" | 数据2
  |-
  | 2022
  | 1500
  | 1000
  |-
  | 2023
  | 1650
  | 1080
  |-
  | 2024
  | 1850
  | 1130
|}
表格标题
年份 数据1 数据2
2022 1500 1000
2023 1650 1080
2024 1850 1130

可以看出,这是个3列4行的表格,在代码中有4个行标记|-,行标记下有3行以!|起头的单元格标记。下面来逐行讲解这段代码。

{| class="wikitable"
  |+ 表格标题

第1行:{|代表表格开始。后面的class="wikitable"给表格添加HTML类属性“class”,属性值是“wikitable”。这只是标记了有一个表格,而不直接储存内容,所以属性直接写在代码后。该属性给表格通用外观。

第2行:设置表格标题,就是表格上方居中显示的那段文本。简明的标题可以让读者知道表格是否有阅读价值。标题保存东西,加属性需要使用竖线(|)分隔,例如:

<!-- 其他内容略去 -->
  |+ style="text-align: right" | 表格标题
表格标题
年份 数据1 数据2
2022 1500 1000
2023 1650 1080
2024 1850 1130

可以看出顺序:标记、属性、竖线|、内容。这里标题位于右侧。

  |-
  ! scope="col" | 年份
  ! scope="col" | 数据1
  ! scope="col" | 数据2

这四行代码是表格的第一行,有3个单元格,都是表头单元格。|-是表格行标记,于是有了一行。但是还要有格子放,于是有了下面三行。单元格属性scope="col"表示这个表头是一列(column)的表头。也有scope="row",表示表头是一行的表头,见下例。

{| class="wikitable"
  |+ 表格标题
  |-
  ! scope="col" | 年份
  ! scope="col" | 数据1
  ! scope="col" | 数据2
  |-
  ! scope="row" | 2022
  | 1500
  | 1000
  |-
  ! scope="row" | 2023
  | 1650
  | 1080
  |-
  ! scope="row" | 2024
  | 1850
  | 1130
|}
表格标题
年份 数据1 数据2
2022 1500 1000
2023 1650 1080
2024 1850 1130

设置正确scope的好处是,表头与数据的关系不再靠视觉确认,而是明确写在代码里的。浏览器没有视力,这样可以改进用户体验。在使用工具读出页面时,scope特别有用。简单的表格没必要设置,比如我们一开头的例子。浏览器可以推断:哦,只有一行表头,其他行没有,那么这些表头是和列关联的。什么时候该设置scope,自己把握就行了。

对,表头和数据单元格可以写在一行里。二维表格都是这样。

  |-
  | 2022
  | 1500
  | 1000
  |-
  | 2023
  | 1650
  | 1080
  |-
  | 2024
  | 1850
  | 1130
|}

这里就没什么好解释的了。设置了3行,每行3个数据单元格。最后一行|}是来结束这个表格的。

在简单表格中(没有单元格跨行、跨列),每行的单元格数量应相等,不能一行4个,另一行5个或3个。额,你可以试试会发生什么,单元格会突出表格或缺失(不太好发现)。即使有单元格没内容,也应该把标记加上,最好写上“无数据”之类的解释。

当然,可以给单元格加属性:

<!-- 其他内容略去 -->
  | style="background-color: #8fd9d9; color: #024959;" | 1500
|}
表格标题
年份 数据1 数据2
2022 1500 1000

表格里的东西缩不缩进都可以,个人感觉缩进会好看点。这样是可以的:

{|class="wikitable"
|+表格标题
|-
!年份
!数据1
!数据2
|-
|2022
|1500
|1000
|-
|2023
|1650
|1080
|-
|2024
|1850
|1130
|}

最好不要一部分缩进,一部分不缩进,虽然可以生效,但代码可太难看了。如果你故意这样写……保不齐我哪天晚上带着键盘,把键盘光效调成绿色呼吸灯,去敲你家窗户。

前面的代码里,每个单元格独占一行。多个单元格也可以写在一行代码中。

{| class="wikitable"
  |+ 表格标题
  |-
  ! scope="col" | 年份 !! scope="col" | 数据1 !! scope="col" | 数据2
  |-
  | 2022 || 1500 || 1000
  |-
  | 2023 || 1650 || 1080
  |-
  | 2024 || style="background-color: #8fd9d9; color: #024959;" | 1850 || 1130
|}
表格标题
年份 数据1 数据2
2022 1500 1000
2023 1650 1080
2024 1850 1130

选哪种写法都行,我是一个单元格一行代码,感觉易读点。不过简单表格怎么都看得懂。

我建议用工具栏做表格,毕竟方便。这里体现出可视化编辑器的好了,更方便。

单元格的跨行和跨列

先预设一个情景:构建英语的人称代词表。开始可能是这样的:

{| class="wikitable"
  |+ 英语人称代词
  |-
  !
  !
  !
  ! 主格
  ! 宾格
  |-
  ! 单数
  ! 第一人称
  !
  | I
  | me
  |-
  ! 单数
  ! 第二人称
  !
  | you
  | you
  |-
  ! 单数
  ! 第三人称
  ! 男
  | he
  | him
  |-
  ! 单数
  ! 第三人称
  ! 女
  | she
  | her
  |-
  ! 单数
  ! 第三人称
  ! 其他
  | it
  | it
  |-
  ! 复数
  ! 第一人称
  !
  | we
  | us
  |-
  ! 复数
  ! 第二人称
  !
  | you
  | you
  |-
  ! 复数
  ! 第三人称
  !
  | they
  | them
|}
英语人称代词
主格 宾格
单数 第一人称 I me
单数 第二人称 you you
单数 第三人称 he him
单数 第三人称 she her
单数 第三人称 其他 it it
复数 第一人称 we us
复数 第二人称 you you
复数 第三人称 they them

嗯……这是一个5×9的表格,单元格不多不少,也确实列出了人称代词。但是,但是,噫……

这玩意好难读啊!重复的玩意就不能合在一起吗?

那么请出主角:colspan和rowspan。这两个单元格属性可以调整单元格跨多少行、多少列。

单元格默认占一行一列,即colspan="1" rowspan="1"colspan="2"会让单元格占2列空间。同理,rowspan="2"会让单元格占2行空间。

{| class="wikitable"
  |-
  ! 表头1
  ! 表头2
  ! 表头3
  |-
  ! S1
  | colspan="2" | 我拆了右边的墙
|}
表头1 表头2 表头3
S1 我拆了右边的墙
{| class="wikitable"
  |-
  ! 表头1
  ! 表头2
  |-
  ! S1
  | rowspan="2" | 我拆了下边的墙
  |-
  ! S2
|}
表头1 表头2
S1 我拆了下边的墙
S2
{| class="wikitable"
  |-
  ! 表头1
  ! 表头2
  ! 表头3
  |-
  ! S1
  | colspan="2" rowspan="2" | 我全拆了
  |-
  ! S2
|}
表头1 表头2 表头3
S1 我全拆了
S2

嗯?代码里是不是少了单元格?是这样的设定。可以算下,最后一个例子里:

  • 第1行有3个单元格,总的colspan为1×3=3;
  • 第2行有2个单元格,一个是2×2的,总的colspan为1+2=3;
  • 第3行有1个单元格,2×2的单元格会拓展到这一行,总的colspan为1+2=3;

有闲心也可以算算列,但是说实话,“一望而知”。所以这还是个3×3表格。合并掉的单元格就不用写在代码里了。

现在可以改善我们的代词表了:

{| class="wikitable"
  |+ 英语人称代词
  |-
  ! colspan="3" |
  ! 主格
  ! 宾格
  |-
  ! rowspan="5" | 单数
  ! colspan="2" | 第一人称
  | I
  | me
  |-
  ! colspan="2" | 第二人称
  | you
  | you
  |-
  ! rowspan="3" | 第三人称
  ! 男
  | he
  | him
  |-
  ! 女
  | she
  | her
  |-
  ! 其他
  | it
  | it
  |-
  ! rowspan="3" | 复数
  ! colspan="2" | 第一人称
  | we
  | us
  |-
  ! colspan="2" | 第二人称
  | you
  | you
  |-
  ! colspan="2" | 第三人称
  | they
  | them
|}
英语人称代词
主格 宾格
单数 第一人称 I me
第二人称 you you
第三人称 he him
she her
其他 it it
复数 第一人称 we us
第二人称 you you
第三人称 they them

表格好看多了。但这样,代码就比较难读,在大量跨行的时候更难读,也没啥好办法。可以在原本有单元格的位置留个空行,但效果有限。所以整复杂表格就拥抱可视化编辑器吧!

上面的代词表算个复杂表格了,可能要添加scope属性。除了scope="col"scope="row",还有让表头与多个列关联的scope="colgroup",与多个行关联的scope="rowgroup"。这一部分就只放示例了。可以参考MDN上的教程

{| class="wikitable"
  |+ 英语人称代词
  |-
  ! colspan="3" |
  ! scope="col" | 主格
  ! scope="col" | 宾格
  |-
  ! rowspan="5" scope="rowgroup" | 单数
  ! colspan="2" scope="row" | 第一人称
  | I
  | me
  |-
  ! colspan="2" scope="row" | 第二人称
  | you
  | you
  |-
  ! rowspan="3" scope="rowgroup" | 第三人称
  ! scope="row" | 男
  | he
  | him
  |-
  ! scope="row" | 女
  | she
  | her
  |-
  ! scope="row" | 其他
  | it
  | it
  |-
  ! rowspan="3" scope="rowgroup" | 复数
  ! colspan="2" scope="row" | 第一人称
  | we
  | us
  |-
  ! colspan="2" scope="row" | 第二人称
  | you
  | you
  |-
  ! colspan="2" scope="row" | 第三人称
  | they
  | them
|}
英语人称代词
主格 宾格
单数 第一人称 I me
第二人称 you you
第三人称 he him
she her
其他 it it
复数 第一人称 we us
第二人称 you you
第三人称 they them

使用HTML构建表格

可以使用HTML构建表格,但代码会很长,基本不用。就介绍方法了。读者可参考MDN文档

提醒:

  • <thead>…</thead><tbody>…</tbody><tfoot>…</tfoot>不可用,这些元素由MediaWiki自动生成。
  • <colgroup>…</colgroup><col />不可用,仍在讨论实现方法,尽管已经过去了20年(太可惜了)。

脚注和引用

Cite扩展为MediaWiki提供了创建脚注的能力。扩展为MediaWiki提供了两个标签(解析器钩子):<ref>…</ref><references />,使用这两个标签就可以创建脚注。

简单脚注

简单用法是:<ref>…</ref>里写注释,而注释会出现在<references />的位置。

我等了6年<ref>以我在2019年1月19日关注B站账号起算。</ref>,但《鱼子的玩家观察手记3》还不存在。<ref>RIA_Studio.[https://space.bilibili.com/486733 RIA_Studio的个人空间][EB/OL].哔哩哔哩视频,[2025-03-18].</ref>

== 注释和参考文献 ==
<references />

我等了6年[1],但《鱼子的玩家观察手记3》还不存在。[2]

注释和参考文献
  1. 以我在2019年1月19日关注B站账号起算。
  2. RIA_Studio.RIA_Studio的个人空间[EB/OL].哔哩哔哩视频,[2025-03-18].

如果不写<references />,那么注释会显示在页面末尾。如果页面有多个<references /><references />会显示从前一个<references />标签到这里的所有注释。

据说,这篇教程是随意更新的<ref>参考本页的[[Special:PageHistory/Help:Wikitext|历史]]</ref>。
<references />

因为主要作者是个鸽子。<ref>佚名.对Aunst鸽子属性的探索与思考[M].抹岚:自印,2024.</ref>
<references />

据说,这篇教程是随意更新的[1]

  1. 参考本页的历史

因为主要作者是个鸽子。[1]

  1. 佚名.对Aunst鸽子属性的探索与思考[M].抹岚:自印,2024.

引用的组

<ref>…</ref><references />的“group”属性用来给脚注分组。特定组的脚注(<ref group="tip">注释内容</ref>)会显示在对应标记处(<references group="tip" />)。

怪东西<ref>佚名.好东西、坏东西、怪东西[M].[出版地不详]:[出版者不详],[2019].</ref>就要来了<ref group="tip">你应该做好准备</ref>!

== 小贴士 ==
<references group="tip" />

== 参考文献 ==
<references />

怪东西[1]就要来了[tip 1]

小贴士
  1. 你应该做好准备
参考文献
  1. 佚名.好东西、坏东西、怪东西[M].[出版地不详]:[出版者不详],[2019].

多处引用同一注释

<ref>…</ref>标签添加独一无二的“name”属性,就可以通过这一属性多次引用此注释。比如<ref name="fn1">注释内容</ref>可以在后文通过<ref name="fn1" />再次引用。

如果一条脚注需要多次引用,又在组里,那再次引用时需要同时设置“group”和“name”属性,比如<ref group="tip" name="t1" />

RIA有很多怪东西<ref name="ref1">佚名.零洲的怪东西[M].[出版地不详]:[出版者不详],[2024].</ref>,其中以零洲最多。我也只知道少数几样<ref name="ref1" />。

<references />

RIA有很多怪东西[1],其中以零洲最多。我也只知道少数几样[1]

  1. 1.0 1.1 佚名.零洲的怪东西[M].[出版地不详]:[出版者不详],[2024].

分离脚注和正文

直接在相关内容后写脚注比较方便。但如果注释内容太长,就不太好从代码里分辨哪部分是脚注。如果脚注有很多内容,代码会很长,让正文代码隔得很远。可以将脚注内容从正文中分离:将脚注代码<ref>…</ref>移动到显示区域的<references>…</references>中,并加上“name”属性,就可以在正文相关部分使用<ref />引用。

如果脚注属于某个组,那<references>…</references>中的脚注本身并不需要添加“group”属性(由<references>的group属性确定),但正文的引用部分需要加“group”属性。

据研究,RIA的总鸽子数始终在缓慢增加。<ref name="s-1" />已确认这种增加是自然规律。<ref name="s-2" />

鸽子变得“没那么鸽”的情况并不罕见。<ref group="n" name="n-1"/>据信每只鸽子都会出现这种情况。<ref group="n" name="n-2" />

== 注释 ==
<references group="n">
<ref name="n-1">来自身边统计学,可能有偏差</ref>
<ref name="n-2">我等会再写后面的</ref>
</references>

== 参考文献 ==
<references>
<ref name="s-1">佚名.RIA鸽子数量变化的数学模型[D].[出版地不详]:[出版者不详],[2023].</ref>
<ref name="s-2">佚名.莉亚鸽子研究[M].[出版地不详]:[出版者不详],[2022].</ref>
</references>

据研究,RIA的总鸽子数始终在缓慢增加。[1]已确认这种增加是自然规律。[2]

鸽子变得“没那么鸽”的情况并不罕见。[n 1]据信每只鸽子都会出现这种情况。[n 2]

注释
  1. 来自身边统计学,可能有偏差
  2. 我等会再写后面的
参考文献
  1. 佚名.RIA鸽子数量变化的数学模型[D].[出版地不详]:[出版者不详],[2023].
  2. 佚名.莉亚鸽子研究[M].[出版地不详]:[出版者不详],[2022].

模板

MediaWiki的模板是可以被其他页面调用,并显示的一段内容。模板本质上就是一般wiki页面,不过被设计显示在其他页面(即嵌入到其他页面中)。模板一般属于模板命名空间,页面名以“模板:”或“Template:”作为前缀。创建模板的方法与其他页面相同。

模板的初衷其实很简单:内容复用,集中维护。假设有许多页面要用到同一段内容(比如,在不同页面显示的一堆相关链接),如果这段内容有更改,传统方式需要更改所有用到它的页面,显然低效、不现实。模板解决了这个问题。将内容做成模板,并在页面中调用这个模板,更新模板时,其他页面显示的内容也会跟着更新。

模板和普通页面并无区别,它的内容可以是简单的一段话。通过使用HTML元素构建结构,设置传入参数,使用解析器函数做判断、运算,编写模板样式(CSS表),调用其他模板,甚至编写、调用Lua模块,模板也可以变得相当强大

调用模板

一般调用模板的方法是{{模板名}},会调用“模板:模板名”。

有数种调用方式:

  • {{模板名}}:最常用的调用方式。在调用模板的页面加载给读者时,假设没有缓存,页面都会从模板加载内容。这意味着模板更新时,页面的相关内容也会跟着更新。
  • {{subst:模板名}}:在页面保存时,模板的代码会复制到页面中,在结构上,页面和模板脱离了。模板更新后,页面内容不会跟着更新。这种方式叫替换引用。
  • {{safesubst:模板名}}:和上一条相似,但模板调用的其他模板也会变成代码,复制进来。
  • {{msgnw:模板名}}:显示页面时,模板代码不会解析,以wikitext形式显示给读者,类似于把模板代码框在了<nowiki>…</nowiki>里面。模板更新时,页面的相关内容也会跟着更新。

不属于模板命名空间的页面也可以被调用(基本不会这样做),只需加上命名空间前缀。

  • {{模板:模板名}}会调用“模板:模板名”,等同于使用{{模板名}}
  • {{用户:Aunst/sandbox}}会调用“用户:Aunst/sandbox”。
  • {{:抹岚}}会调用“抹岚”。
    • {{subst::抹岚}}会替换引用“抹岚”。

如果命名空间前缀不存在,会假定它是模板:{{Foo:模板名}}会调用“模板:Foo:模板名”。

可以用简单方式调用子页面:比如{{/doc}}被“模板:模板名”调用,会显示“模板:模板名/doc”。

模板参数

调用模板时可以传入参数。参数可以让模板生成不同的内容,或者有不同的行为。

模板本身需要编写参数相关代码,才能在调用时使用参数。模板代码中,参数的基本形式是3对大括号括着的参数名:{{{参数名}}}

调用模板时这样设定参数:模板名后加竖线“|”,后接参数名,后接等号“=”,后接参数值,即:{{模板名|参数名=参数值}}。当然,可以设置多个参数:在前一个参数值后加竖线,再重复就行了:{{模板名|p1=v1|p2=v2}}

参数名竖线前的空格、换行符对结果没有影响。于是,如果你需要,代码里可以每行写个参数。一般的说,如果这个模板需要放在正常文本中间,代码就不换行;如果需要单独占一块空间,不位于文本内,就换行。下面两个模板的显示内容是一样的:

{{Cquote
  | content = ppppp……
  | footer = 匿名用户
}}
{{Cquote|content=ppppp……|footer=匿名用户}}

下面以一个例子来讲解模板的编写与使用。有这一段话:“感谢你所做的一切,送你一朵小花。来自不愿透露姓名的读者。”这类文本会经常用在讨论页,所以编写了一个叫“感谢”的模板。之后经常在讨论页调用这个模板。

但这个模板有些不足:有时候需要感谢特定的事,也需要署名,怎么办呢?于是为模板代码加上了参数:

感谢你{{{1}}},送你一朵小花。来自{{{2}}}。

调用时给它设置了参数:

{{感谢|1=改正了[[帮助:Wikitext]]页面的错字|2=[[User:Aunst|]]}}

于是,这句话显示成这样:“感谢你改正了帮助:Wikitext页面的错字,送你一朵小花。来自Aunst。”

像“1”、“2”这种数字形式的参数名叫编号参数,调用时可以不写参数名与等号,直接写参数值。参数值的出现顺序决定了它是几号。比如上面的调用可以写成:

{{感谢|改正了[[帮助:Wikitext]]页面的错字|[[User:Aunst|]]}}

编号参数的简写调用有一些限制:中间不能出现等号。如果有等号,就会将等号前的内容(而不是出现位置)视作参数名。解决办法是写上编号:“1=……”、“2=……”

参数默认值

编写模板时可以给参数加上默认值。没有默认值的参数,调用时会显示代码里的参数名(即{{{参数名}}})。在模板代码的参数名后添加竖线(|),竖线后面的内容就是默认值。比如,上面的感谢模板如果要设置默认值,可以这样写:

感谢你{{{1|所做的一切}}},送你一朵小花。来自{{{2|不愿透露姓名的读者}}}。

如果参数名后有竖线,但后面没东西,代表参数默认为空。这类参数在调用时如果不设置,就不会显示。下例中参数“2”即为此类参数。

感谢你{{{1|所做的一切}}},送你一朵小花。{{{2|}}}。

如果调用且不设置参数:

{{感谢}}

模板会显示为:“感谢你所做的一切,送你一朵小花。”

参数别名

一个参数可以有许多名字;或者说,多个参数的作用可以相同。

和写正常参数一样,只要把参数放在同一位置,就可以实现参数别名:

感谢你{{{1|}}}{{{reason|}}}{{{原因|}}}。

这样就简单实现了参数别名,使用时,只要(也只能)在“1”“reason”“原因”里选一个用就行。但是如果要设置默认值,这种方法就不好用了。只能在其中一个参数设置默认值(不然会重复),如果用户选用了另一个,默认值也会显示出来。所以一般的用法是将参数名嵌套:

感谢你{{{1|{{{reason|{{{原因|所做的一切}}}}}}}}}。

这种方法就很好,如果用户没用参数“1”,就会去用参数“reason”,“原因”参数同理;如果都没有,就用默认值。只有一点缺点:别名一多,大括号就会多,会不知道哪儿是哪儿。可以考虑使用{{#if:}}解析器函数:

感谢你{{#if:{{{1|}}}{{{reason|}}}{{{原因|}}}|{{{1|}}}{{{reason|}}}{{{原因|}}}|所做的一切}}。

{{if empty}}模板可以用来解决,可以考虑使用。

感谢你{{if empty|{{{1|}}}|{{{reason|}}}|{{{原因|}}}|所做的一切}}。

嵌入内容控制

模板被调用时,默认会显示模板的所有内容。一些解析器函数可以设置显示哪些内容。

  • <includeonly>…</includeonly>内的内容只会在模板被调用时显示,不会在模板页面中显示。
  • <noinclude>…</noinclude>内的内容不会在模板被调用时显示,只在模板页显示。
  • 如果有<onlyinclude>…</onlyinclude>,模板被调用时,只会显示标签里面的内容。用得比较少。

考虑以下代码:

一些模板代码。<includeonly><small style="color: rgb(138, 7, 0);">本模板正被调用。</small></includeonly><noinclude>
以上内容为演示。
</noinclude>

在被调用时,结果为:

一些模板代码。本模板正被调用。

在查看模板页面时,结果为:

一些模板代码。以上内容为演示。

<includeonly>…</includeonly>里可以放不适合在模板页面显示的东西。典型用法包括:

  • 如果模板本身不适合在模板页显示,可以把代码全放在<includeonly>里面。
  • 用来给调用该模板的页面添加分类。(模板本身不会归到这一分类里,调用模板的页面会)

<noinclude>…</noinclude>里基本就是解释模板怎么用的模板文档了。本wiki中主要是把{{Documentation}}放里面,该模板会调用模板的/doc子页面,实现了文档与模板本身分离。示例如下:

……
模板代码末尾</div><noinclude>
{{Documentation}}
</noinclude>

模板的链接与分类

wiki链接里,链接到模板需要添加命名空间前缀:[[Template:Navbox]]显示为Template:Navbox,或使用中文前缀:[[模板:Navbox]]显示为模板:Navbox

{{tl}}{{tlg}}系列模板提供了更好吃的代码。在第1个编号参数填写模板名,就可以生成用两个大括号括起来的模板链接:{{tl|Documentation}}生成{{Documentation}}。更多用法可以查阅模板文档。

本wiki中,模板的分类一般放在模板文档(模板的/doc子页面)里,用<includeonly>…</includeonly>括起来。模板会调用文档,于是就会用文档里的分类。这样做的好处是,即使模板本身被保护,也可以在文档里调整分类。示例:

……模板文档末尾
<includeonly>
[[Category:移动消息框]] <!-- 要设置的分类 -->
</includeonly>

模板的典型代码结构

大多数模板要有一个模板页和文档页(/doc)。根据需要,也可以添加更多子页面,模板样式页面(/styles.css)和沙盒(/sandbox)等。假设有一个“Example”模板,wiki中的相关页面名可能有:

  • 模板:Example——模板页
  • 模板:Example/doc——文档
  • 模板:Example/sandbox——沙盒
  • 模板:Example/testcases——测试样例
  • 模板:Example/styles.css——附加CSS样式

模板页的代码布局大致符合:

<!-- 页面开头 -->
<includeonly><templatestyles src="Template:Example.css" /><!-- 如果希望在模板页展示模板效果,删去<includeonly>;templatestyles标签用来载入模板样式 -->
模板代码</includeonly><noinclude><!-- 如果希望在模板页展示模板效果,删去</includeonly>;includeonly和noinclude在同一行是为了防止调用时产生多余空行 -->
{{Documentation}}<!-- 统一文档模板 -->
</noinclude>

文档页大致符合:

<!-- 页面开头 -->
模板的介绍……

== 参数 ==
模板参数介绍……

== 示例 ==
模板用例……

== 注意事项 ==
模板注意事项……

== 模板数据 ==
模板数据……

== 相关页面 ==
列出相关页面……

<includeonly>
[[Category:模板自身的分类]]
</includeonly>

章节可以根据需要增减。

讨论与项目页面

以下代码可能在讨论与项目页面中有用。

签名

各种签名可以用数量不等的波浪号(~)生成。签名可用于讨论中。签名中,你的用户名会指向用户页。(注意:仅适用于源代码编辑,切换回可视化编辑会失效哟~)

描述 输入 显示
在输入的文字后加上4个波浪号,会生成你的用户名与保存时间。 ~~~~ 用户名留言)2026年3月14日 (六) 00:58 (CST)
3个波浪号只生成用户名。 ~~~ 用户名留言
5个波浪号只生成保存时间。 ~~~~~ 2026年3月14日 (六) 00:58 (CST)
目录