Hallo,
laut Spezifikation sollen die display-Werte table* ja das Verhalten einer HTML-Tabelle simulieren.
Es wird auch sehr schön beschrieben, wie die "virtuelle Tabelle" ggf. um fehlende Elemente (z.B. eine table-cell ohne vorige table-row Angabe) ergänzt werden soll.
Was mir aber nicht ganz klar ist: Muss ein als display:table definiertes Element überhaupt Kinder haben? Also konkret wäre folgendes zulässig, oder nicht?
<div style="display:table; margin: 0 auto;">Dies ist eine Tabelle ohne Kind</div>
Auf die Art ließen sich ja recht einfach zentrierte Block-Elemente schaffen, die auf Größe ihres Inhalts schrumpfen.