您可以使用collapsible选项及其配套的open选项,指定在交互时展示或隐藏块内容。当AsciiDoc源代码转换成HTML时,这个块会映射到一个披露摘要元素(即,一个summary/details对)。如果输出格式不支持这种交互,它可能会被渲染为一个无样式的块(类似于一个开放块)。
可折叠区块语法
你可以通过在示例结构容器上指定`collapsible`选项来使块内容可折叠。这个选项将把一个示例块更改为一个可折叠块。
Unresolved directive in collapsible.adoc - include::example$collapsible.adoc[tag=basic]
在输出中,此块的内容在读者点击默认标题“Details
”之前是隐藏的。可折叠区块语法的结果显示如下。
Unresolved directive in collapsible.adoc - include::example$collapsible.adoc[tag=basic]
像其他块一样,可折叠块识别`id`和`role`属性。
可折叠段落语法
如果区块内容只是一个段落,您可以使用示例段落样式而不是示例结构容器来创建一个可折叠的段落。
Unresolved directive in collapsible.adoc - include::example$collapsible.adoc[tag=paragraph]
在输出中,这个块的内容在读者点击默认标题“Details
”之前是隐藏的。可折叠段落语法的结果如下所示。
Unresolved directive in collapsible.adoc - include::example$collapsible.adoc[tag=paragraph]
自定义切换文本
如果你想自定义用于切换可折叠内容显示的文本,请在区块或段落上指定一个标题。
Unresolved directive in collapsible.adoc - include::example$collapsible.adoc[tag=title]
可折叠块的自定义标题的结果显示如下。
Unresolved directive in collapsible.adoc - include::example$collapsible.adoc[tag=title]
请注意,即使这个块有一个标题,它也没有编号,也没有标题前缀。这是因为它不是一个示例块,因此不会像示例块那样获得一个带编号的标题前缀。
默认开启
如果你希望折叠块默认为展开状态,请同样指定`open`选项。
Unresolved directive in collapsible.adoc - include::example$collapsible.adoc[tag=open]
默认打开的可折叠块的结果显示如下。
Unresolved directive in collapsible.adoc - include::example$collapsible.adoc[tag=open]
作为一个围栏使用
就像开放式块一样,可折叠块是一种封闭结构。如果你想让其他类型的块也具有可折叠性,比如列表块,你可以将该块嵌套在可折叠块内。
Unresolved directive in collapsible.adoc - include::example$collapsible.adoc[tag=nested]
包含文字块的可折叠区块 的结果如下所示。
Unresolved directive in collapsible.adoc - include::example$collapsible.adoc[tag=nested]
由于切换文本充当块标题,您可以选择不在嵌套块上放置标题,正如此示例中所示。