0

我正在使用GWT 2.5MGWT 1.12。据我测试,这仅发生在 IOS 6 上。这是我的问题:我在为显示动画而编写的组件之一中使用了LayoutPanel 。每当创建该组件时,GWT 都会将此 DIV 添加到 DOM 中:

可怕的10cm div

这个 div 不是我的代码的一部分,而是LayoutPanels 用于以 cm 为单位进行大小计算的东西)在 iOS 6 上造成了可怕的布局问题。当我从纵向到横向再回到纵向时,就会出现这个问题,这个巨大的 DIV 导致错误计算的宽度,其结果是我最终将所有身体都推到了左侧,看起来像是一个空白列。

我已经使用WEINRE对其进行了调试,如果我将宽度更改为 0,问题就会消失,这意味着 div 并没有像它应该的那样真正隐藏。

所以我的问题是这个。有没有办法禁用这种支持,摆脱那个 div,或者实际上用纯 GWT 手段隐藏它?

我知道我可以用JNI代码摆脱 DIV但这不是我正在寻找的解决方法。我也知道这个相关的问题,但我不认为我在问同样的问题:GWT div aria-hidden not hidden in IE

一如既往,感谢您的宝贵时间...

4

1 回答 1

1

有点晚了,但我最近在 android 浏览器和 chrome for android 上遇到了这个问题,看到相同的 div 元素是根本原因。在我的例子中,div 被注入是因为我在同一个项目中拥有移动视图和完整的 GWT 视图。

针对常规桌面浏览器的完整视图也被初始化,因此将麻烦的 div 元素注入到根文档中。

对我来说,解决方案是将所有移动视图和完整视图简单地分离到单独的包中,并将这些视图包的范围限定在它们各自的移动和完整 gwt.xml 文件中。

如果在 MGWT 项目中使用标准 LayoutPanel,我认为无法解决此问题。

于 2013-07-30T23:03:40.243 回答