如何设置具有两个区域的边界容器



我有以下布局,我需要调整"中心窗格"的大小以满足屏幕(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;
        }

这是因为您的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/

只需将其添加到您的 CSS 中

即可
html,body{
 height:100%;
margin:0;
padding:0;
}

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

试试这个

body {
   margin: 0;
}

最新更新