2015-11-16 150 views
0

我在我的dojo应用程序中实现了dgrid,并且出于某种原因,网格似乎在应用于.dgrid-cell类时忽略了white-space:nowrap;属性分配。我的目标是使dgrid的单元格宽度永远不会降低到低于单元格标题中的内容。但实际行为是,如果行中的单元太多以适应其整体性,它们的宽度都会相同。dgrid单元格中忽略的空白css属性

我尝试了以下声明,以不同的特殊性和重要等:

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

我甚至试图把它应用到所有的细胞如下:

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

但物业只是似乎被忽略。有关我如何能够实现这个的任何建议吗?

回答

2

white-space: nowrap应该work just fine

但是,让dgrid根据单元格内容自动确定列宽是不可行的,这是因为它的设计方式(以及其他任何动态数据网格组件,包括dojox网格和gridx,如果我不是错误)。

dgrid在其自己的表格中呈现每一行,这使虚拟滚动(即OnDemandGrid)等功能成为可能,同时也避免了大量行和列需要根据所有其内容。因此,不可能根据内容自动调整dgrid的列的大小。

如果您主要关注基于标题内容的宽度,希望这足够合理,可以根据其预期内容实现。您也可以使用text-overflow: ellipsis(正如我在上面链接的小提琴中所做的那样)在发生时更优雅地指示溢出。

+0

谢谢你的回答。不过,我只是对小提琴进行了改变,以演示我遇到的问题。注意在这个例子中,标题内容正在被切断,即它不遵守空格:nowrap声明。我希望的行为是,网格将根据需要水平滚动,以适应整个显示的标题。 http://jsfiddle.net/7jtcp4u4/1/ 作为一边(可能不相关) - 在我的应用程序中,我动态地创建服务器上的列/网格布局定义,因为它将是动态的,并且与每个呈现不同 – Manachi