I noticed that in IE 8, when I place a TextButton inside a Content Panel, it has unwanted top margin. It works fine in Chrome and FF though. I'm posted a standalone test case and screenshot below. I'm using GXT v3.0.1.

Code:
package com.hello.gxt.client; 
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.user.client.ui.IsWidget;
import com.google.gwt.user.client.ui.RootPanel;
import com.google.gwt.user.client.ui.Widget;
import com.sencha.gxt.widget.core.client.ContentPanel;
import com.sencha.gxt.widget.core.client.button.TextButton;
import com.sencha.gxt.widget.core.client.container.VerticalLayoutContainer;
import com.sencha.gxt.widget.core.client.container.VerticalLayoutContainer.VerticalLayoutData;
 
public class HelloGXT implements IsWidget, EntryPoint {
 
  private ContentPanel root;
 
  @Override
  public Widget asWidget() {
    if (root == null) {
 
      root = new ContentPanel();
      root.setHeaderVisible(false);
      root.setPixelSize(200, 100);
       
      TextButton btn = new TextButton("Test Button");
      
      VerticalLayoutContainer con = new VerticalLayoutContainer();     
      con.add(btn, new VerticalLayoutData(-1, -1));
      root.setWidget(con);
    }
 
    return root;
  }
 
  @Override
  public void onModuleLoad() {
    RootPanel.get().add(asWidget());
  }
}
Sencha_GXT_TextButton_ContentPanel.jpg