如果我在display: table;
元素中添加块元素,它们不会扩展到表格的100%宽度,而是扩展到表格第一列的宽度的100%。如果我手动向此块元素添加更大的非百分比“px”宽度值,它还会导致表的第一列随之扩展。无论此块元素的位置如何(顶部或底部)都会发生。
我有一个小提琴来传达这一点:https://jsfiddle.net/ugdre5s9/1/。请注意,顶部的.table-caption-div
元素和行底部和中间的.full-width-row
元素不会超出第一列宽度。我尝试在display: table-row;
中包装这些元素,但这也没有帮助。
如何插入一个元素作为display: table;
节点的子节点,该元素将扩展到100%的宽度?
答案 0 :(得分:1)
该块被放置在一个跨越单个列的匿名表格单元格中。
您无法指定单元格框在CSS中应跨越的行数或列数。这是CSS表模型的最大限制之一。但是在你的小提琴中你可以通过使用一个表并用.table-caption-div
元素替换你的caption
来完全解决问题,因为你在那里是一个表 ,并且应该被标记为这样而不是一堆语义无意义的div(嗯,除了全宽行,它应该完全是完全独立的元素,而不是像表格数据的一部分那样在表格中加工)