我想知道......有没有办法用GWT标准ScrollPane隐藏水平滚动条?我的意思是也许不使用外部CSS样式等?或者您可以推荐一种更优化的方式来达到效果?
...关于CSS,我现在尝试为我的ScrollPane设置这样的样式
.a-scroll {
overflow-y: scroll;
overflow-x: hidden;
}
Run Code Online (Sandbox Code Playgroud)
...但似乎它不起作用,水平滚动条仍然可见:S那么有一个解决方法吗?
谢谢
默认情况下,将ScrollPanels的overflow属性设置为auto(即,滚动条将根据需要显示)以获得最多的跨浏览器解决方案.因此,由浏览器决定何时显示此类滚动条.此外,调用scrollPanel.setAlwaysShowScrollBars(false)是无用的,因为已经在构造时调用(在initialize()方法中).
无论如何,我发现你要求的是一个已知的问题.
如果你想要总是隐藏水平滚动条,你需要overflow-x: hidden在可滚动元素上设置属性ScrollPanel(正如你所尝试的那样,但是这样的面板不是一个带有overflow属性的简单div ).试试:
public class MyScrollPanel extends ScrollPanel {
public void setAlwaysHideHorizontalScrollBar(boolean alwaysHide) {
getScrollableElement().getStyle().setOverflowX(alwaysHide ? Overflow.HIDDEN : Overflow.AUTO);
}
// ... and the like.
}
Run Code Online (Sandbox Code Playgroud)
请记住,如果您设置上述内容,在某些浏览器中您将无法再水平滚动.也是overflow-x/yCSS3属性,而overflowCSS2.所以这可能不是你想要的.
在这种情况下,一些CSS技巧可以以隐藏滚动条,但仍然允许滚动,像帮助这个.
另一种选择可能是使用CustomScrollPanel小部件,其中允许通过提供具有零不透明样式的自定义滚动条(不是最好的,很难)来隐藏滚动条等.
当然,另一种选择可能是推出你自己的基于div的小部件(可能扩展SimplePanel),你需要所有你需要的样式,如问题所示.
| 归档时间: |
|
| 查看次数: |
8792 次 |
| 最近记录: |