Css 显示位于GWT中心的根面板

Css 显示位于GWT中心的根面板,css,gwt,gwt-designer,Css,Gwt,Gwt Designer,我正在使用GoogleWebToolkit开发一个小的登录页面。我正在使用GWT设计器。我的问题是rootPanel不是显示在浏览器的中心,而是显示在浏览器的左上角。我怎样才能把它放在页面的中心呢?你根本不需要GWT,只需要CSS/HTML <body> <div id="root" style="width: 100px; margin: auto;"> </body> 您不能在屏幕中央显示根面板,因为根面板是文档本身的,它没有位置。 您需要的是在Ro

我正在使用GoogleWebToolkit开发一个小的登录页面。我正在使用GWT设计器。我的问题是rootPanel不是显示在浏览器的中心,而是显示在浏览器的左上角。我怎样才能把它放在页面的中心呢?

你根本不需要GWT,只需要CSS/HTML

<body>
  <div id="root" style="width: 100px; margin: auto;">
</body>

您不能在屏幕中央显示
根面板,因为
根面板
是文档本身的
它没有位置。

您需要的是在
RootPanel
中添加一个水平居中的基础面板。这个新面板(假设一个
FlowPanel
)将容纳所有其他小部件,并且该面板可以有一个位置,这意味着它可以居中

应该采取以下措施:

RootPanel rp = RootPanel.get();
FlowPanel fp = new FlowPanel();

fp.add(allYourWidgets);
fp.addStyleName('center'); // where center is a css rule with "margin: auto;"

rp.add(fp);

RootPanel获取对所有应用程序小部件最终必须添加到的面板的引用。(RootPanel在浏览器中返回对文档正文的引用。)您通常会将应用程序的起点注入HTML页面。可以通过使用RootPanel类的get()方法来实现这一点

我的错误是,你必须指定一个宽度才能工作。这只会使它水平居中,而不是垂直居中。根面板不必是元素。如果在RootPanel.get()中指定ID,它将选择任何具有该ID的元素作为根面板。欢迎使用SO,如果可以,请添加一些代码示例来解释您的解决方案。