Javascript 固定flexbox以占用空间

Javascript 固定flexbox以占用空间,javascript,jquery,html,css,flexbox,Javascript,Jquery,Html,Css,Flexbox,我试图找到一个现代的解决方案,在页面顶部有一个固定的菜单栏(flex-box),下面有一个flex-box。我希望页面滚动,菜单保持静态,第二个内容弹性框(fixBox)的内容滚动。但是,我希望固定菜单的行为就像它与fillBox div的相对关系一样,显示在它下面,而不是它下面 我有以下代码: <!DOCTYPE HTML> <html> <head> <style> body { padding:

我试图找到一个现代的解决方案,在页面顶部有一个固定的菜单栏(flex-box),下面有一个flex-box。我希望页面滚动,菜单保持静态,第二个内容弹性框(fixBox)的内容滚动。但是,我希望固定菜单的行为就像它与fillBox div的相对关系一样,显示在它下面,而不是它下面

我有以下代码:

<!DOCTYPE HTML>
<html>
   <head>
      <style>
      body {
         padding:0;
         margin:0;
      }
      #logo {
         width:170px;
         border: 1px solid black;
      }
      #menuStrip {
         position:relative;
         width:95%;
         height:100%;
         background-color:#f0f0f0;
         border: 1px solid black;
      }
      #topContainer {
         position:fixed;
         display: flex;
         justify-content: center;
         align-items: center;
         border: 1px solid black;
         width:100%;
         height:50px;
      }
      #fillBox {
         display:flex;
         justify-content: center;
         align-items: center;
         border: 1px solid black;
      }

      #fill1 {
         width:100%;
         height:2000px;
         background-color:#a2b565;
      }
      #menuObj {
         position:absolute;
         right:0;
         width:40px;
         height:30px;
         border:1px solid; black;
         background-color:red;

      }
      </style>
   </head>
   <body>
      <div id="topContainer">
         <div id="menuStrip"><div id="menuObj"> </div></div>
      </div>
      <div id="fillBox">
         <div id="fill1"> <p> hello </p></div>
      </div>
   </body>
</html>

身体{
填充:0;
保证金:0;
}
#标志{
宽度:170px;
边框:1px纯黑;
}
#梅努斯蒂普{
位置:相对位置;
宽度:95%;
身高:100%;
背景色:#f0;
边框:1px纯黑;
}
#顶部容器{
位置:固定;
显示器:flex;
证明内容:中心;
对齐项目:居中;
边框:1px纯黑;
宽度:100%;
高度:50px;
}
#填料箱{
显示器:flex;
证明内容:中心;
对齐项目:居中;
边框:1px纯黑;
}
#填充1{
宽度:100%;
高度:2000px;
背景色:#a2b565;
}
#梅诺布{
位置:绝对位置;
右:0;
宽度:40px;
高度:30px;
边框:1px实心;黑色;
背景色:红色;
}
你好


注意:不寻找最高利润的黑客解决方案…

这个问题的答案与flexbox无关,它与固定定位有关

position:fixed
将DOM元素完全从文档流中移除,因此其他DOM元素忽略它们占用的空间。一种(几种可能的)做法是在
#fillBox
中添加一个顶部填充,该填充等于
#topContainer
的高度-如果
#topContainer
将始终具有固定高度

正文{
填充:0;
保证金:0;
}
#标志{
宽度:170px;
边框:1px纯黑;
}
#梅努斯蒂普{
位置:相对位置;
宽度:95%;
身高:100%;
背景色:#f0;
边框:1px纯黑;
}
#顶部容器{
位置:固定;
显示器:flex;
证明内容:中心;
对齐项目:居中;
边框:1px纯黑;
宽度:100%;
高度:50px;
}
#填料箱{
填充顶部:50px;
显示器:flex;
证明内容:中心;
对齐项目:居中;
边框:1px纯黑;
}
#填充1{
宽度:100%;
高度:2000px;
背景色:#a2b565;
}
#梅诺布{
位置:绝对位置;
右:0;
宽度:40px;
高度:30px;
边框:1px实心;黑色;
背景色:红色;
}

你好


这个问题的答案与flexbox无关,它与固定定位有关

position:fixed
将DOM元素完全从文档流中移除,因此其他DOM元素忽略它们占用的空间。一种(几种可能的)做法是在
#fillBox
中添加一个顶部填充,该填充等于
#topContainer
的高度-如果
#topContainer
将始终具有固定高度

正文{
填充:0;
保证金:0;
}
#标志{
宽度:170px;
边框:1px纯黑;
}
#梅努斯蒂普{
位置:相对位置;
宽度:95%;
身高:100%;
背景色:#f0;
边框:1px纯黑;
}
#顶部容器{
位置:固定;
显示器:flex;
证明内容:中心;
对齐项目:居中;
边框:1px纯黑;
宽度:100%;
高度:50px;
}
#填料箱{
填充顶部:50px;
显示器:flex;
证明内容:中心;
对齐项目:居中;
边框:1px纯黑;
}
#填充1{
宽度:100%;
高度:2000px;
背景色:#a2b565;
}
#梅诺布{
位置:绝对位置;
右:0;
宽度:40px;
高度:30px;
边框:1px实心;黑色;
背景色:红色;
}

你好