Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css 水平面板上的GWT元件间距_Css_Gwt - Fatal编程技术网

Css 水平面板上的GWT元件间距

Css 水平面板上的GWT元件间距,css,gwt,Css,Gwt,我有以下代码来为我的页面布局菜单: //Header Conainer Panel VerticalPanel headerWidget = new VerticalPanel(); headerWidget.setWidth("100%"); //Header Panel HorizontalPanel headerPanel = new HorizontalPanel(); headerPanel.setStyleName("header"); headerPanel.setWidth(

我有以下代码来为我的页面布局菜单:

//Header Conainer Panel
VerticalPanel headerWidget = new VerticalPanel();
headerWidget.setWidth("100%");


//Header Panel
HorizontalPanel headerPanel = new HorizontalPanel();
headerPanel.setStyleName("header");
headerPanel.setWidth("100%");
Label title = new Label("Information System");
title.setStyleName("componentgap");
headerPanel.add(title);
headerWidget.add(headerPanel);

//Menu 1 Panel
HorizontalPanel menu = new HorizontalPanel();
menu.setStyleName("menu1");
menu.setHorizontalAlignment(HorizontalPanel.ALIGN_LEFT);

Label componentLabel = new Label("Component");
componentLabel.setStyleName("componentgap");
componentLabel.setWidth("50px");
menu.add(componentLabel);

//Outbound Routing Menu Item
final Label outRouteMenu = new Label("Routing");
outRouteMenu.setWidth("75px");
outRouteMenu.setStyleName("menu1button");
我必须将headerPanel和headerWidget设置为100%,因为我希望顶部页面栏占据整个屏幕的宽度。但是,当我将标签添加到菜单时,它们在屏幕上的间隔是均匀的,而不是像我所希望的那样在左侧相邻。正如您所看到的,我试图显式地设置标签的宽度,以迫使它们变小,从而在菜单栏中彼此相邻

有什么办法可以做到这一点吗?您将看到我使用的样式包括以下这些样式,但会指出它们与组件的宽度无关

谢谢,

詹姆斯

目前我有这样的想法:

CSS:


您必须设置单元格的宽度(
),而不是单元格内小部件的宽度。因此,在CSS中,您可以使用:

.header td { ... }
或者您可以使用API:

horizontalPanel.setCellWidth(horizontalPanel.getWidget(0), "0%");

另一种选择是使用
s而不是表格。

我没有专门使用表格。事实上,我确实在我的登陆HTML页面中使用了div。你建议我如何使用div的广告?Thanks@James:HorizontalPanel作为HTML表实现。标签被实现为div,因此您可以使用div,例如通过在FlowPanel中使用标签。使用CSS应用
float:left到标签div。与桌面实验相比,这种浮动div的行为有所不同,并找出最适合您的解决方案:-)我按照您的建议使用了FlowPanel,效果不错,谢谢。
horizontalPanel.setCellWidth(horizontalPanel.getWidget(0), "0%");