如果将`header`值分配给表格的`options`属性,那么表格的第一行将被提升为标题行。你可以显式或隐式地将`header`分配给表格的第一行。

Tip
表头行会忽略通过列和单元格指定符分配的任何样式操作符。它也会忽略分配给表格列指定符的对齐操作符;然而,任何分配给表头行中单元格指定符的对齐操作符都将被应用。

将首行显式指定为表头

表格中的表头行语义和样式是通过在`options`属性中赋值`header`,明确指定给表格的第一行。options`属性是在表格的属性列表中通过简写(%value`)或正式语法(options="value")设置的。

当使用简写语法设置时,options 属性由百分号(%)表示。在使用简写语法分配`header`的表格中,使用`options`的简写语法为`header`赋值。

使用简写语法分配`header`的表格
|===
[%header,cols="2,2,1"] (1)
|第1列,表头行
|第2列,表头行
|第3列,表头行

|第1列第2行的单元格
|第2列第2行的单元格
|第3列第2行的单元格
|===

使用简写语法赋值的值必须在表格的属性列表中的`cols`属性(或任何其他命名属性)之前输入,否则处理器会忽略它们。

《ex-short》中的表格如下所示。

.Result of 使用简写语法分配`header`的表格 [%header,cols="2,2,1"]

Column 1, header row

Column 2, header row

Column 3, header row

Cell in column 1, row 2

Cell in column 2, row 2

Cell in column 3, row 2

选项属性指定的表格标题 中,options 属性被设置并使用正式语法分配了 header 值。options 属性接受以逗号分隔的值列表。

选项属性指定的表格标题
Unresolved directive in add-header-row.adoc - include::example$row.adoc[tag=opt-h]

选项属性指定的表格标题中表格的第一行采用相应的标题样式和语义进行呈现。

Unresolved directive in add-header-row.adoc - include::example$row.adoc[tag=opt-h]

将首行隐式地设置为标题栏

您可以根据表格的布局隐式定义标题行。以下惯例决定了何时第一行自动成为标题行:

  1. 表格分隔符内的第一行内容不为空。

  2. 表格分隔符内的第二行内容是空的。

第一行被隐式地指定为表头
Unresolved directive in add-header-row.adoc - include::example$row.adoc[tag=impl-h]

如下所示的结果,如果所有这些规则都成立,那么表格的第一行将被视为表头行。

Unresolved directive in add-header-row.adoc - include::example$row.adoc[tag=impl-h]

取消隐式分配表头

为了抑制将第一行默认提升为标题行的隐式行为,请使用正式的(options=noheader)或简写(%noheader)语法,将值`noheader`分配给`options`属性。在取消激活隐式表头行,使用noheader选项中,使用简写语法指派了`noheader`。

取消激活隐式表头行,使用noheader选项
|===
[%noheader]
|Cell in column 1, row 1 |Cell in column 2, row 1

|Cell in column 1, row 2 |Cell in column 2, row 2
|===

.Result of 取消激活隐式表头行,使用noheader选项 [%noheader]

Cell in column 1, row 1

Cell in column 2, row 1

Cell in column 1, row 2

Cell in column 2, row 2