gpt4 book ai didi

html - 如何设置子div元素从其位置到页面底部的高度?

转载 作者:太空宇宙 更新时间:2023-11-04 01:12:07 27 4
gpt4 key购买 nike

下面的代码是panel.csspanel.html。我正在尝试设置 div.sidebardiv.content 从其位置到页面底部的高度。但是将它们的高度设置为 100% 实际上并没有将它们的高度设置到页面底部。相反,他们的高度很矮。如何将它们的高度设置为页面底部?

面板.css

*{
margin:0;
padding: 0;
}
#header{
width: 100%;
height: 50px;
background: #120103;
margin: 0 auto;
}
#header div{
margin-left: 15px;
margin-top: 15px;
float: left;
}
#header div a{
font-size: 1.6em;
color: #fff;

}
#header div a span{
color: #ebebeb;
}

.container{
width: 100%;
height: 100%;
margin: 0 auto;
}

.sidebar{
width: 250px;
height: 100%;
background: #171717;
float: left;
}

ul li{
list-style: none;
}

a {text-decoration: none;}

ul li a{
display: block;
padding:10px;
color: #ccc;
font-size: 0.8em;

}

.content{
background: lightblue;
width: auto;
height: 100%;
margin-left: 250px;
padding:15px;
}

div.box{
margin-top: 15px;
width: 200px;
height: 50px;
float: left;
margin-left:10px;
}
div.box div.box-top{
color:#fff;
background: #120103;

}

div.box div.box-panel{
color:#333;
background:#fff;
border: 1px solid rgb(44, 47, 40);
}
<!DOCTYPE html>
<html>
<head>
<title>Panel</title>
</head>
<link rel="stylesheet" type="text/css" src ="panel.css">
<body>
<div id="header">
<div>
<a>
This is <span>header</span>
</a>
</div>
</div>

<div class="container">
<div class="sidebar">
<ul>
<li><a href="#">Sidebar 1</a></li>
<li><a href="#">Sidebar 2</a></li>
<li><a href="#">Sidebar 3</a></li>
<li><a href="#">Sidebar 4</a></li>

</ul>
</div>
<div class="content">
<div class="box">
<div class="box-top">What's new?</div>
<div class="box-panel">
Lalalalala!
</div>
</div>
<div class="box">
<div class="box-top">What's new?</div>
<div class="box-panel">
Lorem Ipsum what some want some super some greate some!
</div>
</div>
<div class="box">
<div class="box-top">What's new?</div>
<div class="box-panel">
Lalalalala!
</div>
</div>
</div>
</div>

</body>
</html>

最佳答案

将 html 和 body 的高度设置为 100% 始终是一个好习惯,以确保任何子元素的大小都合适。所有父元素也是如此。父级的 100% 大小,如果父级的高度为零,内容仍会显示,因为它溢出了,但零的 100% 仍然是零。 ;)

就个人而言,我喜欢使用 html, body { min-height: 100vh; } 所以页面永远不会小于窗口。

如果您知道元素的垂直位置,则可以使用 calc 帮助您调整元素从当前位置到父元素底部的大小。例如,您的元素从 250 像素开始,而您的页面高 2000 像素。

CSS

.page { height: 2000px; }
.topElement { height: 250px; }
.bottomElement { height: calc(100% - 250px) }

HTML

<body class="page">
<div class="topElement"></div>
<div class="bottomElement"></div>
</div>

或者您可以使用 css 网格来布置您的页面,这非常方便,但可能会带来一些兼容性问题。

.page {
display: grid;
grid-template-rows: 250px auto;
}

关于html - 如何设置子div元素从其位置到页面底部的高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50997918/

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