2014-12-19 93 views
0

我有以下布局,我需要调整“中心窗格”的大小以实现屏幕(100%)。 用下面的代码我无法实现结果。 我在做什么错?如何解决它?如何设置两个区域的BorderContainer?

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; 
     } 

回答

1

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

html, body { 
    height: 100%; 
} 

如果你这样做,那么中心窗格中会占据整个屏幕。这将导致100%的屏幕+顶部窗格的额外100像素。如果你想要让这个中心窗格中需要高度的休息,那么你应该使用:

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

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

0

试试这个

body { 
    margin: 0; 
} 
1

只是在你的CSS

html,body{ 

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

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