Defining tables in Asciidoctor is very easy. The start and end of the table are defined by
|===. But if we want to add a new table to a table cell we cannot use the same syntax. To define a nested table we must replace the
| separator with
!. So instead of
|=== to indicate the table boundaries we use
!===. Also the cell separators are now
! instead of
|. Finally we must make sure the table cell or column supports Asciidoc markup, so the table is properly created. We must configure the cell or column with
a so the nested table is created.
In the following example Asciidoctor markup we have a simple table with a nested table in the second column and row. Notice we can still apply all table configuration to the nested table as well:
= Tables == Nested tables To nest a table in a table we must use `!` as table separator instead of `|`. Also the type of the column or cell must be set to `a` so Asciidoc markup is processed. [cols="1,2a"] |=== | Col 1 | Col 2 | Cell 1.1 | Cell 1.2 | Cell 2.1 | Cell 2.2 [cols="2,1"] !=== ! Col1 ! Col2 ! C11 ! C12 !=== |===
When we run Asciidoctor to create HTML for this markup we get the following result:
Written with Asciidoctor 1.5.5.