在dojo中使用控件datagrid,发现很多时候我们没办法在自己定义某些样式,显得很不随机。
以下是自己书写时总结的一些经验:
首先,对一般设置class属性后,想要起样式遵循当前应用,这是改变不大,只需要:
.tundra .dojoxGrid,.tundra .dojoxGridS,.tundra .dojoxGridScrollbox{
background-color:rgba(255,255,255,0);
}
.dojoxGridRow.dojoxGridRowOdd {
background-color: #f5f5f5;
}
.dojoxGridRow {
background-color: #e9e9e9;
}
这时候,可以改变一些应用样式,对表格内的背景做一些修改。但在改动head时发现,使用的是页面自己的样式,class改动的样式页面会忽略掉,这是需要在js中做修改
,修改样式为:
dojo.forEach(dojo.query(".dojoxGridMasterHeader th"), function(item){
dojo.style(item, "height", "30px");
});
dojo.forEach(dojo.query(".dojoxGridMasterHeader"), function(item){
dojo.style(item, "height", "30px");
});
dojo.forEach(dojo.query(".dojoxGridCell"), function(item){
dojo.style(item, "height", "30px");
});
dojo.forEach(dojo.query(".dojoxGridContent"), function(item){
dojo.style(item, "height", "80%");
dojo.style(item, "overflow-y", "auto");
});
这样,就修改了相应想要调节的head或其他样式的高度。
不过还有一个细节问题需要注意,就是这些修改一定在页面初始的时候就要应用,及onload时要记得使用。