gpt4 book ai didi

CSS 填充 100% 的高度。不同的浏览器大小

转载 作者:太空宇宙 更新时间:2023-11-04 13:18:04 25 4
gpt4 key购买 nike

我有一个侧边栏(蓝色),它被设置为向左浮动。我已将高度设置为 100%,将 body 和 html 高度设置为 100%。它工作正常:

enter image description here

问题是当浏览器小于内容 Pane div(红色)时,侧边栏的高度变为与浏览器相同的高度。所以如果我向下滚动,侧边栏比页面短:

enter image description here

尽管主体会自行调整,但其高度会覆盖内容 Pane 。但我猜侧边栏的高度是窗口的高度,因为它设置为 100% 的 body,设置为 100% 的 html,设置为 100% 的窗口。我可以为 body 和 html 取出 100% 的高度,但这意味着我不能设置侧边栏的高度,这将使其尽可能短。

我真的被难住了。任何帮助将不胜感激

html:

<html>
<body>
<div id='menubar'>ignore this for now</div>
<div id='sidebar'>a few elements<div>
<div id='contentPane'>lots of elements</div>
</body>
</html>

CSS:

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

#sidebar{
float:left;
height:100%;
}

解决方案

Hashem Qolami 通过包裹 div 并对侧 Pane 使用绝对定位解决了这个问题

html:

<body>
<div class="wrapper">
<div id='menubar'>note the height of this element</div>
<div id='sidebar'>a few elements</div>
<div id='contentPane'>a lot of elements</div>
</div>
</body>

CSS:

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

.wrapper {
min-height: 100%;
position: relative;
background-color: gold;
}

#menubar {
height: 30px;
background-color: darkcyan;
}

#sidebar{
position: absolute;
left: 0;
top: 30px; /*HEIGHT OF THE MENU BAR*/
bottom: 0;
width: 200px;
background-color: orange;
}

#contentPane {
margin-left: 200px;
}

jsfiddle.net/hashem/J4WW9

最佳答案

我设法做到这一点的最佳方法是创建一个围绕 sideBar 和 contentPane 的 div。

Here拿笔来演示!

关于CSS 填充 100% 的高度。不同的浏览器大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22284489/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com