2013-09-30 36 views
1

好吧,说我有一个ScrollPanel高度=“500px”。 ScrollPanel内部有一个HTMLPanel。如何使ScrollPanel仅在内部小部件高于内部时才可见并且内部部件比内部小部件短时不可见?

有时,HTMLPanel有更多的内容,所以它会比“500像素”,前高:700像素。另一次,HTMLPanel的内容较少,所以它会比“500px”,例如:300px更短。

当HTMLPanel比500像素高,有一个滚动条出现。这是有道理的。没有任何问题。

然而,问题是当HTMLPanel短于500像素(例如,300像素),没有滚动条出现,但ScrollPanel仍显示在高度500像素。所以有200px的高度缺口留下未使用,&这是浪费空间&不可接受的。

PLS看到这张照片 enter image description here

因此,如何使ScrollPanel唯一可见的,当其内部部件是高于它&当其内部部件是比它短的不可见的?

我们可以通过CSS或编码解决?

回答

1

是的,你可以做到这一点。你可以给你的ScrollPanel一个最大高度。

ScrollPanel p = new ScrollPanel(); 
p.getElement().getStyle().setProperty("maxHeight", "500px"); 

所以当你的HTML面板是300px,你的滚动面板的高度将是300px。当HTML面板高度> 500像素,然后ScrollPanel将显示滚动条

另一种方式:

假设你有加入ScrollPanel一类名为.scp那么CSS就会被

.scp 
{ 
    max-height: 500px 
} 

然后将该类添加到您的滚动条上

ScrollPanel p = new ScrollPanel(); 
p.addStyleName("scp"); 
+0

可以提供css代码吗? – Kiti

+0

您可以直接从gwt设置css属性。 p.getElement()。getStyle()。setProperty(“maxHeight”,“500px”); – Dilantha

+0

它的工作正如我所料,非常感谢你 – Kiti