Css ExtJS:隐藏列的魔力

Css ExtJS:隐藏列的魔力,css,extjs,hidden,Css,Extjs,Hidden,我想知道ExtJS如何在没有任何可见CSS更改的情况下隐藏列 我遇到的问题是,我无法设置CSS规则来隐藏隐藏列中的子图标。F.e.如果hidden td有“hidden”类,我可以这样使用: td.hidden img {display:none;} 但在本例中,我只能在具有操纵grid.columns[coll].ishiden()的渲染器中执行此操作 这没关系,但若我显示隐藏列,它将不会刷新网格并显示空列。当然,我可以为显示/隐藏该列再添加一个事件,但这太难了!有什么简单的方法吗?您可以通

我想知道ExtJS如何在没有任何可见CSS更改的情况下隐藏列

我遇到的问题是,我无法设置CSS规则来隐藏隐藏列中的子图标。F.e.如果hidden td有“hidden”类,我可以这样使用:

td.hidden img {display:none;}
但在本例中,我只能在具有操纵grid.columns[coll].ishiden()的渲染器中执行此操作


这没关系,但若我显示隐藏列,它将不会刷新网格并显示空列。当然,我可以为显示/隐藏该列再添加一个事件,但这太难了!有什么简单的方法吗?

您可以通过定位相应的
col
元素来隐藏列。无需在每个
td
s上设置类

这是我之前做的一把小提琴:
哪个有


...
和CSS:

不可见{可见性:折叠}

但你甚至不需要上课;如果您知道列号,也可以使用第n个子项(2)。

它为它们提供了0px的宽度:

<colgroup>
    <col class="x-grid-cell-gridcolumn-1023" style="width: 0px;">
</colgroup>


。。。这也会隐藏你的
img
。除非你给了他们一个绝对的位置什么的。您应该尝试使用
float
margin
padding
定位您的
img
。或者,您必须使用列的
隐藏
显示
事件自己切换
'hidden'
类。

使用ExtJS网格,您永远不知道实际列数-用户可以拖动它们并更改顺序。我在生成的html代码中看不到任何“col”,所以它没有魔力。但是你讲的例子很好,这不回答你的问题吗?如果它确实存在,则您需要将其标记为已接受。。。仅供参考Ext4.2.1中的渲染过程已更改。在这个版本中,根本不会呈现隐藏列(即,没有HTML元素),因此无论问题的原因是什么,都应该解决这个问题。
<colgroup>
    <col class="x-grid-cell-gridcolumn-1023" style="width: 0px;">
</colgroup>