如何设置具有两个区域的BorderContainer?

时间:2014-12-19 07:57:10

标签: html css dojo dijit.layout

我有以下布局,我需要调整"中心窗格的大小"完成屏幕(100%)。 使用以下代码,我无法实现结果。 我究竟做错了什么?如何解决?

http://jsfiddle.net/m8112z2b/

  <div data-dojo-type="dijit/layout/BorderContainer" style="width: 100%; height: 100%" id="xxx-dijit-layout-app">
        <div data-dojo-type="dijit/layout/ContentPane data-dojo-props=" region:'top'" id="xxx-dijit-layout-control">Top pane</div>
        <div data-dojo-type="dijit/layout/ContentPane" data-dojo-props="region:'center'" id="xxx-dijit-layout-workspace">Center pane</div>
    </div>

        #xxx-dijit-layout-app {
            width: 100%;
            height: 100%;
        }

        #xxx-dijit-layout-control {
            height: 100px;
            background-color: red;
        }

        #xxx-dijit-layout-workspace {
            height: 100%;
            background-color: yellow;
        }

3 个答案:

答案 0 :(得分:1)

只需在你的css中添加它

html,body{

 height:100%;
margin:0;
padding:0;
}

你的身体和html没有给出任何高度。

答案 1 :(得分:1)

那是因为你的HTML只占用了它所需要的高度。如果您希望默认情况下<html><body>为100%,那么您必须使用:

html, body {
  height: 100%;
}

如果您这样做,则中心窗格将占据整个屏幕。这将导致屏幕100%+顶部窗格的额外100px。如果您想要使中心窗格占据其余高度,那么您应该使用:

#xxx-dijit-layout-workspace {
  height: calc(100% - 100px);
  background-color: yellow;
}

例如:http://jsfiddle.net/at38eh7g/

答案 2 :(得分:0)

试试这个

body {
   margin: 0;
}