我最近把1.8改成了1.10。
当在声明式创建中设置gutters="false"
或data-dojo-props="gutters:false"
时,它不会隐藏排水沟。
当我将bordercontainer源中的水槽属性设置为false时,它仍然显示水槽。
所有dojo示例都是指gutters=true
,所有google结果都是指旧版本。
- 在1.8设置'水沟=false '也删除了客户端边框和填充周围的bordercontainer。
- 在1.10中,它只是消除了客户端之间的"差距"。是否有一个设置,以获得相同的结果,或者我应该hack与css/样式?
你实际上是在依赖一个bug。即使使用gutters: false
,视觉元素仍然应该是可见的。这个bug最近已经修复了,你可以在ticket #17966和Bill的提交中看到。
发生的事情是当禁用水沟时,BorderContainer的baseClass被重写了。因为baseClass被改变了,CSS不再适用,所以视觉元素被删除了(这是您所期望的)。
通过禁用分隔符,您将不再获得排水沟,正如您在下面的演示中看到的那样:http://jsfiddle.net/HT3PJ/。但是,BorderContainer周围的边界仍然存在,这是有意义的(毕竟它是一个BorderContainer)。
然而,如果你对这个(有bug的)行为感兴趣,你总是可以通过给你的BorderContainer添加一个class="noBorder"
属性并添加以下CSS来自己应用它:
.noBorder.dijitBorderContainer .dijitBorderContainer-child {
border: none;
padding: 0;
}
结果将与之前的结果相似,正如您在这个演示中看到的那样:http://jsfiddle.net/w9ACq/1/
以下是dojo v1.10的文档:
- http://dojotoolkit.org/reference-guide/1.10/dijit/layout/BorderContainer.html
- http://dojotoolkit.org/api/?qs=1.10/dijit/layout/BorderContainer
当为false时,只有可调整大小的窗格具有用于调整大小的gutter(即可拖动的分割器)。你的是一个可调整大小的窗格(splitter:true
)吗?
我建议下载dojo 1.10的源代码压缩包,解压缩到tomcat这样的web服务器上,并尝试使用/dijit/tests/layout/test_BorderContainer.html
您可以在这里访问:http://archive.dojotoolkit.org/nightly/dojotoolkit/dijit/tests/layout/test_BorderContainer.html
我刚刚花了一个上午的时间在同一个问题上。如果你想要和以前一样的行为,在1.10中你想使用dijit.layout.LayoutContainer而不是BorderContainer。清除排水沟=错误。LayoutContainer基本上就是一个没有边框的BorderContainer