跳转到内容

Help:高级编辑:修订间差异

删除2,745字节 、​ 2024年4月10日 (星期三)
表格
(高级编辑)
 
(表格)
第34行: 第34行:
<!-- <br/>''(注:源文件宽度为128px,故frameless格式限制此图片大小不超过128px,看起来比其他图片略小一些)'' -->
<!-- <br/>''(注:源文件宽度为128px,故frameless格式限制此图片大小不超过128px,看起来比其他图片略小一些)'' -->
<!-- thumb={filename} -->
<!-- thumb={filename} -->
* border+frameless:嵌入式。限制图像宽度且呈现边框。唯一的组合 格式 选项。
* border+frameless:嵌入式。限制图像宽度且呈现边框。 格式 唯一的组合选项。
* frame:显示为浮动式。别名''framed''。
* frame:显示为浮动式。别名''framed''。
* thumb:浮动式。别名''thumbnail''。限制宽度为缩略图尺寸。
* thumb:浮动式。别名''thumbnail''。限制宽度为缩略图尺寸。
第170行: 第170行:
 调整快速插入的表格参数,并调整表格内内容与源代码,你就可以获得一个有意义的表格。
 调整快速插入的表格参数,并调整表格内内容与源代码,你就可以获得一个有意义的表格。


===Pipe语法教程===
=== 表格标记===
Pipe代码功能与HTML 表格标记 完全相同 。  如果你熟悉HTML语言,你 可以 跳过 这一部分。
一个表格是由'''表格起始'''与'''表格末尾'''所包围的wiki文本。
*'''表格起始''' 由大括号({和})及竖线字符(| )组成。{| 表示表格开始,|}表示 表格 结束 。每 表格 必须有完整的开 结束符
以下是 表格 使用的 标记 ,如无特别说明,标记必须位于行首
{|
 
 可以 参考HTML Table语法学习 这一部分。
{| class="wikitable"
!标记!!说明!!持有表格内容
|-
|'''<nowiki>{|</nowiki>'''||'''表格起始'''
|-
|'''<nowiki>|+</nowiki>'''||表格'''题注''' 。每 张表格只能出现一次,且介于 表格 始与 第一行 。||√
|-
|-
|'''<nowiki>|-</nowiki>'''|| 表格''' 行元素''' 起始。第一行 省略。
<span style="color: #a63;">'''<nowiki>{|</nowiki>'''</span>  表格 内容 <span style="color: #a63;">'''<nowiki>|}</nowiki>'''</span>
|}
*'''表格标题'''可省略。 其由一个竖线和加号(+)组成(|+)。其后即添加标题内容。
{|
|-
|-
|'''<nowiki>!</nowiki>'''||''' 表头单元格''' 起始。可以使用 <code>!!</code> 在同 一行 接续书写多个 。||
<nowiki>{|</nowiki>
<span style="color: #a63;">'''<nowiki>|+</nowiki> 标题'''</span><br>
表格内容
<nowiki>|}</nowiki>
|}
*''' 添加新行''' 由一个竖线和连字符 -)组成(|- 。添加该代码后,表格代码将转至下 一行。<!--本站发生的无数恐怖的表格bug大多由漏了|-导致。-->
{|
|-
|-
|'''<nowiki>|</nowiki>'''||''' 数据单元格''' 起始。可以使用(<code><nowiki>||</nowiki></code> 一行 接续书写多 个。||√
<nowiki>{|</nowiki> <br>
<nowiki>|+</nowiki> 表格标题<br>
<span style="color: #a63;">'''<nowiki>|-</nowiki>'''</span><br>
第一行内容<br>
<span style="color: #a63;">'''<nowiki>|-</nowiki>'''</span><br>
第二行内容<br>
<nowiki>|}</nowiki>
|}
*'''单元格'''由竖线组成。 一行 代码后添加竖线即会在该行添加一 单元格 若各行单元格数量不等,则空出。
{|
|-
|-
|'''<nowiki>|}</nowiki>'''||''' 末尾'''
<nowiki>{|</nowiki><br>
<nowiki>|+</nowiki> 表格标题<br>
<nowiki>|-</nowiki><br>
<span style="color: #a63;">'''&#124;'''</span> 第一行第一个单元格<br>
<nowiki>|-</nowiki><br>
<span style="color: #a63;">'''&#124;'''</span> 第二行第一个单元 <br>
<span style="color: #a63;">'''&#124;'''</span> 第二行第二个单元格<br>
<nowiki>|}</nowiki>
|}
|}
编写一个表格的流程如下:
*'''表格起始'''与'''表格末尾'''是表格始终必需的标记。
<b style="color: #a63;"><nowiki>{|</nowiki></b>
''表格内容''
<b style="color: #a63;">|}</b>
*(可选)使用'''题注'''标记,添加标题内容。
<nowiki>{|</nowiki>
<b style="color: #a63;">|+ 表格标题</b>
''表格内容''
|}
*添加'''行元素'''标记后,表格将显示新的一行内容。<!--本站发生的无数恐怖的表格bug大多由漏了|-导致。-->
<nowiki>{|</nowiki>
|+ 表格标题
<b style="color: #a63;">|-</b>
''第一行内容''
<b style="color: #a63;">|-</b>
''第二行内容''
|}
*添加'''单元格'''标记会在当前行元素添加一个对应类型单元格。若各行单元格数量不等,则空出。
<nowiki>{|</nowiki>
|+ 表格标题
|-
<b style="color: #a63;">|</b> 单元格(1,1)
|-
<b style="color: #a63;">|</b> 单元格(2,1)
<b style="color: #a63;">|</b> 单元格(2,2)
|}
 上述代码实际显示会是这样:
 上述代码实际显示会是这样:
{|
{|
|+ 表格标题
|+ 表格标题
|-
|-
第一行第一个 单元格
| 单元格(1,1)
|-
|-
第二行第一个 单元格
| 单元格(2,1)
第二行第二个 单元格
| 单元格(2,2)
|}
|}


*同一行的单元格也可通过两个竖线写于代码中的同一行中,以缩短版面。
<nowiki>{|</nowiki>
|+ 表格标题
<span style="border: 1px dashed #a63;">|-</span>
<b style="color: #a63;">!表头1 !! 表头2 !! 表头3</b>
|-
<b style="color: #a63;">|单元格1 || 单元格2 || 单元格3</b>
|-
<b style="color: #a63;">|单元格A</b>
<b style="color: #a63;">|单元格B</b>
<b style="color: #a63;">|单元格C</b>
|}
上述代码实际显示会是这样,注意省略了表格第一行的行元素标记:
{|
|+ 表格标题


:同一行的单元格也可通过两个竖线写于代码中的同一行中,以缩短版面。
!表头1 !! 头2 !! 头3
{|
|-
|
<nowiki>{|</nowiki><br>
<nowiki>|+</nowiki> 格标题<br>
<nowiki>|-</nowiki><br>
<span style="color: #a63;">'''&#124;单元格1 <nowiki>||</nowiki> 单元格2 <nowiki>||</nowiki> 单元格3'''</span><br>
<nowiki>|-</nowiki><br>
<span style="color: #a63;">'''&#124;单元格A'''</span><br>
<span style="color: #a63;">'''&#124;单元格B'''</span><br>
<span style="color: #a63;">'''&#124;单元格C'''</span><br>
<nowiki>|}</nowiki>
|}
上述代码实际显示会是这样:
{|
|+ 格标题
|-
|-
|单元格1 || 单元格2 || 单元格3
|单元格1 || 单元格2 || 单元格3
第248行: 第253行:
|}
|}


 
===表格的属性===
: 单元格 代码中的 竖线 字符是无法形成 新单元格 两个竖线字符或头一个单个竖线字符 与另一个竖线字符之间的代码 成为紧接着 一个 单元格的格 式设置代码 但可省略 。余下竖线 字符 及其他均归入一个单元格中,并显示出来。
以数据 单元格 为例,只有双竖线或行首 单竖线 才能确定一个 新单元格。
{|
事实上,除了表格末尾标记外 其他标记都 以通过类似HTML Attribute 形式添加对应级别( 单元格 、题注、行或整个表格) 属性。
|-
对于“持有表 内容”的标记(见上表) 需要用单竖线将属性值与单元内容分隔
|
余下 竖线及其他 不会被转义, 均归入一个单元格中,并显示出来。
<nowiki>{| border="1"</nowiki><br>
<nowiki>{|</nowiki> border="1"
<nowiki>|-</nowiki><br>
|''format modifier (格式设置不显示)'' <b style="color: #a63;">|</b>余下所有内容 <b style="color: #a63;">|</b>(包括竖线) <b style="color: #a63;">|</b>将归入 <b style="color: #a63;">|</b>第一个单元格||第二个单元格
<nowiki>|format modifier (格式设置不显示)</nowiki> <span style="color: #a63;">'''&#124;'''</span><nowiki>余下所有内容</nowiki> <span style="color: #a63;">'''&#124;'''</span><nowiki>(包括竖线)</nowiki> <span style="color: #a63;">'''&#124;'''</span><nowiki>将归入</nowiki> <span style="color: #a63;">'''&#124;'''</span><nowiki>第一个单元格||第二个单元格</nowiki><br>
|-
<nowiki>|-</nowiki><br>
|''format''  <b style="color: #a63;">|</b>余下所有内容 <b style="color: #a63;">||</b>''format'' <b style="color: #a63;">|</b>将归入 <b style="color: #a63;">|</b>第二个单元格
<nowiki>|format </nowiki> <span style="color: #a63;">'''&#124;'''</span><nowiki>余下所有内容</nowiki> <span style="color: #a63;">'''<nowiki>||</nowiki>'''</span><nowiki>format</nowiki> <span style="color: #a63;">'''&#124;'''</span><nowiki>将归入</nowiki> <span style="color: #a63;">'''&#124;'''</span><nowiki>第二个单元格</nowiki><br>
|}
<nowiki>|}</nowiki>
|}
 上述代码实际显示会是这样:
 上述代码实际显示会是这样:
{| border="1"
{| border="1"
|''format modifier (格式设置不显示)'' |余下所有内容 |(包括竖线)|将归入 |第一个单元格||第二个单元格
|-
|-
|format modifier (格式设置不显示) |余下所有内容 |(包括竖线)|将归入 |第一个单元格||第二个单元格
|''format'' |余下所有内容 ||''format'' |将归入 |第二个单元格
|-
|format |余下所有内容 ||format |将归入 |第二个单元格
|}
|}
:即两个||之间的|不能超过1个。


 
* 例如,可进行靠右 颜色等设置。
: 例如,可进行靠右 颜色等设置。
<nowiki>{|</nowiki> border="1"
{|
| 单元格1(设置缺损)
|-
|-
|
| <b style="color: #a63;">align="right" |</b> 单元格2(靠右) || <b style="color: #a63;">style="background: #FFB6C1" |</b> 单元格3(红底色)
<nowiki>{| border="1"</nowiki><br>
|}
<nowiki>|-</nowiki><br>
<nowiki>| 单元格1(设置缺损)</nowiki><br>
<nowiki>|-</nowiki><br>
<span style="color: #a63;">'''<nowiki>| align="right" |</nowiki>'''</span> 单元格2(靠右) <span style="color: #a63;">'''<nowiki>|| style="background: #FFB6C1" |</nowiki>'''</span> 单元格3(红底色)<br>
<nowiki>|}</nowiki>
|}
 上述代码实际显示会是这样:
 上述代码实际显示会是这样:
{| border="1"
{| border="1"
|-
| 单元格1(设置缺损)
| 单元格1(设置缺损)
|-
|-
第288行: 第284行:
|}
|}


 
* 可设置跨行
:即两个||之间的|不能超过1个。
<nowiki>{|</nowiki> border="1"
*'''列标题'''通过以“! scope="col" |”取代“|”,“!! scope="col" |”取代“||”实现。列标题单元格通常与普通单元格不同,虽然会因为浏览器的不同而有所差异,但往往呈现为粗体和居中
  !<b style="color: #a63;">colspan="4"</b>|脉络
{|
|-
|-
|<b style="color: #a63;">rowspan="2"</b>|Ch0
|
|Ch1-1
<nowiki>{|</nowiki><br>
|Ch1-2
<nowiki>|+</nowiki> 表格标题<br>
|Ch1-3
<span style="color: #a63;">'''<nowiki>!</nowiki> scope="col" &#124; 列标题1'''</span><br>
  |-
<span style="color: #a63;">'''<nowiki>!</nowiki> scope="col" &#124; 列标题2'''</span><br>
|Ch2-1
<span style="color: #a63;">'''<nowiki>!</nowiki> scope="col" &#124; 列标题3'''</span><br>
|<b style="color: #a63;">colspan="2"</b>|Ch2-2
<nowiki>|-</nowiki><br>
  |}
<span style="color: #a63;">'''<nowiki>!</nowiki> scope="col" &#124; 列标题1 <nowiki>!!</nowiki> scope="col" &#124; 列标题2 <nowiki>!!</nowiki> scope="col" &#124; 列标题3'''</span><br>
<nowiki>|-</nowiki><br>
&#124; 单元格1 &#124;&#124; 单元格2 &#124;&#124; 单元格3<br>
<nowiki>|}</nowiki>
|}
 上述代码实际显示会是这样:
 上述代码实际显示会是这样:
{|
{| border="1"
|+ 表格标题
!colspan="4"| 脉络
! scope="col" | 列标题1
! scope="col" | 列标题2
! scope="col" | 列标题3
|-
|-
! scope="col" | 列标题1 !! scope="col" | 列标题2 !! scope="col" | 列标题3
|rowspan="2"|Ch0
|Ch1-1
|Ch1-2
|Ch1-3
|-
|-
| 单元格1 || 单元格2 || 单元格3
|Ch2-1
|}
|colspan="2"|Ch2-2
*'''行标题'''通过将每行代码第一个单元格代码的第一个“|”取代为“! scope="row" |”实现。
{|
|-
|
<nowiki>{|</nowiki>
<nowiki>|+</nowiki> 表格标题<br>
<nowiki>!</nowiki> scope="col" &#124; 列标题1<br>
<nowiki>!</nowiki> scope="col" &#124; 列标题2<br>
<nowiki>!</nowiki> scope="col" &#124; 列标题3<br>
<nowiki>|-</nowiki><br>
<span style="color: #a63;">'''! scope="row" &#124; 行标题1'''</span><br>
&#124; 单元格2 <nowiki>||</nowiki> 单元格3<br>
<nowiki>|-</nowiki><br>
<span style="color: #a63;">'''! scope="row" &#124; 行标题A'''</span><br>
&#124; 单元格B<br>
&#124; 单元格C<br>
<nowiki>|}</nowiki>
|}
上述代码实际显示会是这样:
{|
|+ 表格标题
! scope="col" | 列标题1
! scope="col" | 列标题2
! scope="col" | 列标题3
|-
! scope="row" | 行标题1
| 单元格2 || 单元格3
|-
! scope="row" | 行标题A
| 单元格B
| 单元格C
|}
*'''可选参数'''可设置单元格、行或整个表格。在表格未使用可选参数时是没有边框的,可使用border代码添加边框。
{|
|-
|
<nowiki>{|</nowiki> <span style="color: #a63;">'''border="1"'''</span>
<nowiki>|+</nowiki> 表格标题<br>
<nowiki>!</nowiki> scope="col" &#124; 列标题1<br>
<nowiki>!</nowiki> scope="col" &#124; 列标题2<br>
<nowiki>!</nowiki> scope="col" &#124; 列标题3<br>
<nowiki>|-</nowiki><br>
<nowiki>!</nowiki> scope="row" &#124; 行标题1<br>
&#124; 单元格2 <nowiki>||</nowiki> 单元格3<br>
<nowiki>|-</nowiki><br>
<nowiki>!</nowiki> scope="row" &#124; 行标题A<br>
&#124; 单元格B<br>
&#124; 单元格C<br>
<nowiki>|}</nowiki>
|}
|}
*可使用border代码添加边框。
<nowiki>{|</nowiki> <b style="color: #a63;">border="1"</b>
|+ <b style="color: #a63;">style="color: red" |</b>表格标题
! scope="col" | 列标题1
! scope="col" | 列标题2
! scope="col" | 列标题3
|-
! scope="row" | 行标题1
| 单元格2 || 单元格3
|-
! scope="row" | 行标题A
| 单元格B
| 单元格C
|}
 上述代码实际显示会是这样:
 上述代码实际显示会是这样:
{| border="1"
{| border="1"
|+ 表格标题
|+ style="color: red" | 表格标题
! scope="col" | 列标题1 
! scope="col" | 列标题1 
! scope="col" | 列标题2 
! scope="col" | 列标题2 
第380行: 第337行:
| 单元格C
| 单元格C
|}
|}
<br>
 
: 但通常使用的表格并不使用边框,而直接使用维基样式“wikitable”。
但通常使用的表格并不使用边框,而直接使用维基样式“wikitable”。
{|
<nowiki>{|</nowiki> <b style="color: #a63;">class="wikitable"</b>
|-
|+ 表格标题
|
! scope="col" | 列标题1
<nowiki>{|</nowiki> <span style="color: #a63;">'''class="wikitable"'''</span>
! scope="col" | 列标题2
<nowiki>|+</nowiki> 表格标题<br>
! scope="col" | 列标题3
<nowiki>!</nowiki> scope="col" &#124; 列标题1<br>
|-
<nowiki>!</nowiki> scope="col" &#124; 列标题2<br>
! scope="row" | 行标题1
<nowiki>!</nowiki> scope="col" &#124; 列标题3<br>
| 单元格2 || 单元格3
<nowiki>|-</nowiki><br>
|-
<nowiki>!</nowiki> scope="row" &#124; 行标题1<br>
! scope="row" | 行标题A
&#124; 单元格2 <nowiki>||</nowiki> 单元格3<br>
| 单元格B
<nowiki>|-</nowiki><br>
| 单元格C
<nowiki>!</nowiki> scope="row" &#124; 行标题A<br>
|}
&#124; 单元格B<br>
所以,一般使用的典型表格如下:
&#124; 单元格C<br>
<nowiki>|}</nowiki>
|}
: 所以,一般使用的典型表格如下:
<center>
<center>
{| class="wikitable"
{| class="wikitable"
第415行: 第368行:
|}
|}
</center>
</center>
<!-- Manual:Collapsible_elements/zh#带有指定的可折叠部分 -->


====表格样式====
====表格样式====
 另外,维基表格的class参数可以添加不同的参数用于实现不同类型的表格,已知的有''wikitable''(通常的表格), ''sortable'' (附加排序功能,行标题会出现排序按钮),''mw-collapsible''(附加折叠功能,生成没折叠的表格)、''mw-collapsed''(附加折叠功能,与前一个参数同时使用,生成已折叠的表格)。在没class参数时,会生成没边框的表格。
 另外,维基表格的class参数可以添加不同的参数用于实现不同类型的表格,已知的有''wikitable''(通常的表格), ''sortable'' (附加排序功能,行标题会出现排序按钮),''mw-collapsible''(附加折叠功能,生成没折叠的表格)、''mw-collapsed''(附加折叠功能,与前一个参数同时使用,生成已折叠的表格)。在没class参数时,会生成没边框的表格。


{|
{| class="wikitable
!代码!!显示效果
 
|-
|-
|<pre> 
|<pre><nowiki>
<nowiki>
{| class=" wikitable"
{| class=" wikitable"
!A!!B!!C 
!A!!B!!C
|-
| abc || def || ghi
|-
| jkl || mno || pqr
|-
| stu || vwx || yz
|}</nowiki></pre>
|
{| class="wikitable"
!A!!B!!C
|-
|-
| abc || def || ghi
| abc || def || ghi
|- 
|-
| jkl || mno || pqr
| jkl || mno || pqr
|-
|-
| stu || vwx || yz
| stu || vwx || yz
|} 
|}
</nowiki>
 
</pre>||<pre> 
|-
<nowiki>
|<pre><nowiki>
{| class="wikitable sortable"
{| class="wikitable sortable"
!A!!B!!C 
!A!!B!!C
|-
|-
|data-sort-value=abc|abc || def || ghi
|data-sort-value=abc|abc || def || ghi
|- 
|-
|data-sort-value=jkl|jkl || mno || pqr
|data-sort-value=jkl|jkl || mno || pqr
|-
|-
|data-sort-value=stu|stu || vwx || yz
|data-sort-value=stu|stu || vwx || yz
|} 
|}</nowiki></pre>
</nowiki>
|
</pre>||<pre> 
{| class="wikitable sortable"
<nowiki>
!A!!B!!C
{| class=" wikitable mw-collapsible "
|-
!A!!B!!C 
|data-sort-value=abc|abc || def || ghi
|-
|data-sort-value=jkl|jkl || mno || pqr
|-
|data-sort-value=stu|stu || vwx || yz
|}
 
|-
|<pre><nowiki>
{| class=" wikitable mw-collapsible"
!A!!B!!C
|-
|-
| abc || def || ghi
| abc || def || ghi
|- 
|-
| jkl || mno || pqr
| jkl || mno || pqr
|-
|-
| stu || vwx || yz
| stu || vwx || yz
|} 
|}</nowiki></pre>
</nowiki>
|
</pre>||<pre>
{| class="wikitable mw-collapsible"
<nowiki>
!A!!B!!C
{| class="wikitable mw-collapsible mw-collapsed"
!A!!B!!C 
|-
|-
| abc || def || ghi
| abc || def || ghi
|- 
|-
| jkl || mno || pqr
| jkl || mno || pqr
|-
|-
| stu || vwx || yz
| stu || vwx || yz
|}
</nowiki>
</pre> 
|}
|}
上述代码实际显示会是这样:
 
{| class="wikitable"
|-
!A!!B!!C 
|<pre><nowiki>
{| class="wikitable mw-collapsible mw-collapsed"
!A!!B!!C
|-
|-
| abc || def || ghi
| abc || def || ghi
|- 
|-
| jkl || mno || pqr
| jkl || mno || pqr
|-
|-
| stu || vwx || yz
| stu || vwx || yz
|}
|}</nowiki></pre>
{| class="wikitable sortable"
|
!A!!B!!C 
{| class="wikitable mw-collapsible mw-collapsed"
!A!!B!!C
|-
| abc || def || ghi
|-
|-
|data-sort-value=abc|abc || def || ghi
| jkl || mno || pqr
|-
|data-sort-value=jkl|jkl || mno || pqr
|-
|-
|data-sort-value=stu|stu || vwx || yz
| stu || vwx || yz
|}
|}
{| class="wikitable mw-collapsible "
 
!A!!B!!C 
|-
|<pre><nowiki>
{| class="wikitable sortable mw-collapsible mw-collapsed" data-expandtext="小型" data-collapsetext="大型"
|+Caption
!A!!B!!C
|-
|-
| abc || def || ghi
| abc || def || ghi
|- 
|-
| jkl || mno || pqr
| jkl || mno || pqr
|-
|-
| stu || vwx || yz
| stu || vwx || yz
|}
|}</nowiki></pre>
{| class="wikitable mw-collapsible mw-collapsed"
|
!A!!B!!C 
{| class="wikitable sortable mw-collapsible mw-collapsed" data-expandtext="小型" data-collapsetext="大型"
|+Caption
!A!!B!!C
|-
|-
| abc || def || ghi
| abc || def || ghi
|- 
|-
| jkl || mno || pqr
| jkl || mno || pqr
|-
|-
| stu || vwx || yz
| stu || vwx || yz
|}
|}
==== 宽高 ====
可对整个表格的宽度与高度,及某行的高度进行设置。要设置某列的宽度可通过设置该列的某个单元格的宽度实现。若表格的宽度不足以显示所有的列,或高度不足以显示所有的行,表格的部分内容可能会缺失,其结果取决于浏览器的不同。


设置于{| 后,为整个表格;设置于|-后,为该行;设置于|或||后,并与该单元格内容之间以|分隔,则为该单元格。
|}
 
整个表格的高度一般都设定为固定值(单位为px、em等),某行的高度设定可以设为固定值也可以为一个变量。
 
#高度为固定值


== 重定向 ==
== 重定向 ==
231

个编辑