单元格中忽略了dgrid空白css属性

dgrid white-space css property ignored in cells

本文关键字:空白 css 属性 dgrid 单元格      更新时间:2023-09-26

我正在我的dojo应用程序中实现一个dgrid,由于某种原因,网格在应用于.dgrid-cell类时似乎忽略了white-space:nowrap;属性赋值。我的目标是使dgrid的单元格宽度永远不会减少到低于单元格标题中的内容。但实际的行为是,如果一行中有太多的单元格无法容纳它们的整体,那么它们的宽度都会相等地减小。

我尝试了以下声明,具有不同的具体性和!重要等:

th.dgrid-cell {
    white-space:nowrap;
}

我甚至尝试将其应用于所有细胞,如下所示:

.dgrid-cell {
    white-space:nowrap;
}

但这项财产似乎被忽视了。关于如何实现这一目标,有什么建议吗?

white-space: nowrap应该可以正常工作。

然而,让dgrid根据单元格内容自动确定列宽是不可行的,因为它的设计方式(如果我没有错的话,还有其他任何动态数据网格组件,包括dojox-grid和gridx)。

dgrid在其自己的表中渲染每一行,这使得虚拟滚动(即OnDemandGrid)等功能成为可能,也避免了通常由具有许多行和列的大型表引起的沉重渲染开销,这些表需要根据其所有内容计算宽度。然而,结果是,不可能让dgrid的列根据内容自动调整大小。

如果您主要关心的是确保基于标头内容的宽度,那么希望这足够合理,可以根据它们的预期内容来实现。您也可以使用text-overflow: ellipsis(正如我在上面链接的fiddle中所做的那样)来更优雅地指示溢出发生时的情况。