html - 根据窗口从它开始的地方获取一个全高div
问题描述
这个问题更具体的项目。我的模板中有两个<div>
看起来像这样。
我希望最后一个 div 从其垂直位置获取与窗口相对应的全高。例如,
如果我添加另一个 div,它应该看起来像这样。
现在在这个例子中,我明确设置高度只是为了演示目的。
如何使最后一个 div 根据其垂直位置计算高度,并且所有内容都应在窗口内可见。
解决方案
您可以为此使用 flexbox。流程是column
这样的,div 是垂直对齐的。最后一个 div 得到一个flex:1
展开。
flex:1
或者flex:1 1 0%
是一个简短的写作:
flex-grow: 1;
flex-shrink: 1;
flex-basis: 0%;
对于您的最后一个 div,flex-grow 和 flex-basis 很重要。
见弹性属性
body {
height: 100vh;
}
.container {
display: flex;
flex-flow: column nowrap;
height: 100%;
}
.container>div {
background: #ccc;
border-top: 3px solid white;
}
.container>div:last-child {
flex: 1;
}
<div class="container">
<div>1</div>
<div>2</div>
<div>3</div>
</div>
推荐阅读
- reporting-services - SSRS - 如何创建表达式列的总和(总计)?
- azure - 创建资源时触发 Azure Function
- postgresql - 无法在 PostgreSQL 中删除模式
- python - 如何按文本查找元素,但它是硒中的数字
- ios - 通过颤振从 iPhone 发送短信
- android - addPaymentMethod Stripe + firebase android
- reactjs - react-i18next - 导入 i18n 实例并直接使用与使用 useTranslation 挂钩
- arrays - 对数组中的值求和
- xamarin.forms - Xamarin Forms (iOS) - 如果您使用 FormattedText 作为 LineBreakMode = TrailTruncation 的标签,则不会添加省略号
- azure-functions - 我们应该如何在 Function App 中使用 Azure 密钥保管库?