From CSS Display,
The element generates a principal table wrapper box containing an additionally-generated table box, and establishes a table formatting context.
It's not much clear if what establishes the TFC is the table wrapper box. The sentence sounds like it's the element, but I believe formatting contexts established in the box tree, not the element tree. So probably it's the table wrapper box or the table box.
CSS Tables 3 and CSS 2.1 are more clear:
The table wrapper box establishes a block formatting context.
I think this means that both the table box and the caption participate in a BFC.
However, CSS Display says
table-row-group, table-header-group, table-footer-group, table-row, table-cell, table-column-group, table-column, table-caption
The element is an internal table element, and participates in a table layout context.
Which is it, does the caption participate in a BFC or in a TFC? What establishes the TFC, the table wrapper box or the table box?
Since captions can't exist outside a table wrapper box (they generate an anonymous one if necessary), I think they should participate in a TFC, which would be established by the table wrapper box.
From CSS Display,
It's not much clear if what establishes the TFC is the table wrapper box. The sentence sounds like it's the element, but I believe formatting contexts established in the box tree, not the element tree. So probably it's the table wrapper box or the table box.
CSS Tables 3 and CSS 2.1 are more clear:
I think this means that both the table box and the caption participate in a BFC.
However, CSS Display says
Which is it, does the caption participate in a BFC or in a TFC? What establishes the TFC, the table wrapper box or the table box?
Since captions can't exist outside a table wrapper box (they generate an anonymous one if necessary), I think they should participate in a TFC, which would be established by the table wrapper box.