【发布时间】:2022-01-11 23:28:47
【问题描述】:
我有这个布局
.main {
background-color: greenyellow;
height: 100vh;
display: flex;
flex-direction: column;
}
.header{
background-color: hotpink;
}
.filter{
background-color: indianred;
}
.sort{
background-color: lavender;
/* height: 30rem; */
}
.jobs{
background-color: blue;
display: flex;
flex: 1;
}
.joblist{
background-color: cornflowerblue;
display: flex;
flex-direction: column;
justify-content: space-between;
}
body,html {
margin: 0;
padding: 0;
}
.pagination{
background-color:chartreuse
}
.items {
background-color:yellow;
display: flex;
flex:1;
flex-direction: column;
overflow-y: scroll;
}
.item {
height: 100px;
border:1px solid black
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- <link rel="stylesheet" href="style.css"> -->
<style>
</style>
<title>Document</title>
</head>
<body>
<div class="main">
<div class="header">
<span>Header</span>
</div>
<div class="filter">
<h1>Filter</h1>
</div>
<div class="sort">
<h1>Sort</h1>
</div>
<div class="jobs">
<div class="joblist">
<div class="items">
<div class="item">1</div>
<div class="item">2</div>
<div class="item">3</div>
<div class="item">4</div>
<div class="item">5</div>
<div class="item">6</div>
<!-- <div class="item">7</div>
<div class="item">8</div> -->
</div>
<div class="pagination">
<h1>Pagination</h1>
</div>
</div>
<div class="jobview">
content
</div>
</div>
</div>
</body>
</html>
这里的问题是,如果我取消注释 7,8 个项目并将它们添加到黄色部分,预期的行为是黄色部分将包含所有带有滚动条的项目。
即使我已将 overflow-y: scroll; 放入.items 并在此处显示滚动条之类的东西。通过将分页部分推到底部而不使用滚动条,第 7 和第 8 项将添加到布局中。如何使用 CSS 解决此问题?
【问题讨论】: