【发布时间】:2022-01-12 02:56:52
【问题描述】:
.main {
background-color: greenyellow;
height: 100vh;
/* flex-direction: column; */
}
.header{
background-color: hotpink;
}
.filter{
background-color: indianred;
}
.sort{
background-color: lavender;
}
.jobs{
background-color: lightsteelblue;
display: flex;
flex-grow: 1;
}
.joblist{
background-color: cornflowerblue;
}
body,html {
margin: 0;
padding: 0;
}
<!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"> -->
<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>
<div class="pagination">
<h1>Pagination</h1>
</div>
</div>
<div class="jobview">
content
</div>
</div>
</div>
</body>
</html>
我已经把 height: 100vh 用绿色绘制了整个视口。 header、filter、sort 应该占用他们需要的相关空间。其余空间应由工作部分占用。理想情况下,工作部分应该一直滚动到底部。我试过 flex-grow: 1,在某些地方,它说flex-grow works only for the main-axis so I tried to flex-direction: column` 来制作主轴。但还是没有结果。
如何使用 css 实现这一点?
【问题讨论】: