我正在尝试创建一个5列布局,其中所有列的高度都是浏览器窗口的全高度。
除了中间列之外,其他列应该是固定的,当滚动浏览器/文档时不会移动。
中间列将包含网站内容,并且会垂直溢出,所以在浏览器中应该像通常一样滚动。
除此之外,除了中间列之外的所有列都有固定的宽度,我需要中间列占据剩余空间(父元素的100%宽度)
一个要求是不使用flexbox或css-grid。
下面的代码是我得到的。添加列“c”甚至会搞乱所有列的全高度,并添加上/下边距。我在这里迷失了,真的很感激一些帮助。
*{ margin:0; padding:0; } body,html{ height:100%; } .parent{ height:100%; width:100%; } .parent,.a,.b,.c,.d,.e{ display:inline-block; height:100%; } .a{ background-color:#99a4fa; width:10%; } .b{ background-color:#5b6cfa; width:100px; } .c{ background-color:#3847b8; width:20%; /* this should be remaining, not 20% */ } .d{ background-color:#1a299c; width:100px; } .e{ background-color:#0d1c8d; width:10%; }
<div class="parent"> <div class="a"> a<br/>locked </div> <div class="b"> b<br/>locked </div> <div class="c"> remaining width <br/> so all cols take up 100% width <Br/> of parent <br/><br/> only div that should scroll vertically with the page </div> <div class="d"> d<br/>locked </div> <div class="e"> e<br/>locked </div> </div>
我使用位置粘性并让中间的列随着滚动流动