9.1. Anonymous rows

If you don't have child elements acting as table rows, then you need to specify extension property column-count on the element styled as a table. The value of this property is a strictly positive integer number. This property has no initial value because by default, tables are expected to have child elements acting as rows.

Tables for which anonymous rows are automatically generated cannot have child elements with display:table-row and the row-span extension property (see above) is not supported for grandchild elements acting as table cells. Other than the two aforementioned limitations, such tables support all the features of normal tables (borders around the table and the cells, column-span, generated content, etc).

Note that in the case of tables for which anonymous rows are automatically generated, you'll often have to explicitly specify standard property width (length or percentage) and extension property start-column (positive integer; see above) on table cells in order to achieve the kind of layout you want.

XHTML dl (definition list) example:

dl {
    display: table;
    column-count: 2;
}

dt,
dd {
    display: table-cell;
    padding: 0.5ex;
}

dt {
    width: 25%;
    start-column: 0;
}

dd {
    width: 50%;
    start-column: 1;
}

XHTML source:

<dl>
  <dt>Term #1</dt>
  <dd>Definition of term #1.</dd>
  <dt>Term #2a</dt>
  <dt>Term #2b</dt>
  <dd>Definition of term #2.<p>More info about term #2.</p></dd>
  <dt>Term #3</dt>
  <dd>Definition of term #3.</dd>
</dl>

Rendered as: