options`属性(通常简称为`opts`)是一个多功能的named attribute,可以被赋予一个或多个值。它可以作为文档属性全局定义,也可以作为某个单独区块的区块属性。
选项没有严格的模式。任何不被识别的选项都会被忽略。
将选项分配给块
你可以使用`options`属性的简写或正式语法,为一个或多个选项分配给一个块。
区块的速记选项语法
要给块分配一个选项,在属性列表中用百分号(%
)作为前缀。百分号隐式地设置了`options`属性。
这是一个侧边栏,其中分配了一个名为option的选项。
你可以通过给每个值前面加上一个百分号(%
)来给一个块分配多个选项。
这是一个侧边栏,它有两个选项,分别命名为option1和option2。
例如,考虑一个带有三个内置选项值的表格,分别是`header`(标题),footer
(页脚)和`autowidth`(自动宽度),已经被赋值给它。 使用速记语法分配的包含三个选项的表格 展示了如何使用简写符号来赋值这些值。
|===
[%header%footer%autowidth,cols=2*~]
|Cell A1 |Cell B1
|Cell A2 |Cell B2
|Cell A3 |Cell B3
|===
块的正式选项语法
在属性列表中,明确设置`options`或`opts`,后接等号(=
),然后是值。
使用正式语法分配选项的侧边栏区块 [source#ex-block-formal]
[opts=option] **** 这是一个侧边栏,它有一个分配给它的选项,名为option。 ****
使用逗号(,
)分隔多个选项值。
使用正式语法分配的有三个选项的侧边栏
[opts="option1,option2"]
****
这是一个侧边栏,它有两个选项,分别是option1和option2。
****
让我们重新审视使用速记语法分配的包含三个选项的表格中的表格,该表格使用简写表示法(%
)指定了三个内置选项值`header`、footer`和`autowidth
。
与使用简写表示法不同,[ex-table-formal]展示了如何使用正式语法为值进行赋值。
使用正式语法分配的带有三个选项的表格
[cols=2*~,opts="header,footer,autowidth"]
|===
|Cell A1 |Cell B1
|Cell A2 |Cell B2
|Cell A3 |Cell B3
|===
使用带有其他属性的选项
让我们考虑将`options`与其他属性结合使用时的情况。以下示例展示了在拥有样式、角色和选项属性时如何构建属性列表。
速记 [来源]
[horizontal.properties%step] (1) (2) (3) 特性1:: 做事情 财产 2:: 做不同的事情
-
The block style attribute, declared as
horizontal
in this example, is a positional attribute. A block style value is always placed at the start of the attribute list. -
properties
is prefixed with a dot (.
), signifying that it’s assigned to the role attribute. The role and options attributes can be set in either order, i.e.,[horizontal%step.properties]
. -
The percent sign (
%
) sets theoptions
attribute and assigns thestep
value to it.
当你使用正式语法时,位置属性和命名属性之间用逗号(,
)分隔。
[horizontal,role=properties,opts=step] (1)
特性1:: 做事情
财产 2:: 做不同的事情
就像在速记示例中一样,一旦设置了任何位置属性,像`role`和`options`这样的命名属性可以在属性列表中以任意顺序设置。