除了引用包含一些“CssResource”并使用ClientBundle获取它之外,我在文档中看不到任何内容,但是如何完全覆盖CellTable的tbody和th?
这可能吗?
答案 0 :(得分:26)
创建一个界面:
interface TableResources extends CellTable.Resources {
@Source({CellTable.Style.DEFAULT_CSS, "<your css file>.css"})
TableStyle cellTableStyle();
}
interface TableStyle extends CellTable.Style {
}
并初始化单元格表:
CellTable.Resources resources = GWT.create(TableResources.class);
table = new CellTable<SomeProxy>(rowSize, resources);
在cellview.client包中,您可以找到默认的gwt css文件。哟用这些作为起点。在"<your css file>.css"
中为您添加了特定的样式更改。
您还可以设置colum样式(在col元素上):
table.addColumnStyleName(colNumer, "some_css_style_name");
或更好地使用css资源名称而不是字符串“some_css_style_name”。
答案 1 :(得分:2)
只是为了它的乐趣,我可能会添加一些令我头疼的东西......如果你改变了cellTableStyle();与其他东西它打破...没有警告或错误,CSS只是没有像我想象的那样出现。不知道这是什么记录,但我发现很多fiddeling试图找出为什么一些CSS是正确的,有些不是..
答案 2 :(得分:2)
由于某种原因,我的cellTable.addColumnStyleName(colNumber,“cssStyle”)不起作用。根据FireBug,无论如何都不添加样式(如果样式不正确,它至少可以将它添加到th元素的classes属性中......)。也许是因为我正在重新绘制列,但它仍然很奇怪。
答案 3 :(得分:1)
我已经使用了上面的解决方案,但是,如果你有另一个带有默认样式的表,它最终会使用你的自定义表。您是否需要使用自定义样式覆盖所有表格,还是有一些解决方法?
另外,我发现CellTable构造函数不是最优的......我必须指定pageSize来指定样式资源CellTable(pageSize,resources)...我一直在为pageSize设置Integer.MAX_VALUE,不确定是否应该是-1或其他东西,因为该值上没有javadoc。