I have a element in my interface with quite a lot of elements. As soon as the list extends over a entire screen, a scrollbar should appear in the list. The element is set to take up the remaining height space in the Right column via flex-grow. Without the list elements, the element fills the remaining height perfectly. however, as soon as there are too many elements for one screen in the element, the entire tag and thus screen overflows.
The <div id=content">
element overflows in height over the space of the <body>
element althoug I set the bodies max-height
property to 100vh
which seems off to me.
Here is a small example with my code: Codepen
How can I adjust the code to display the element with many elements showing scrollbars on the y-axis?
html,
body {
height: 100vh;
max-height: 100vh;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>CSV Parser Tool</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- BOOTSTRAP CSS & JS-->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-giJF6kkoqNQ00vy+HMDP7azOuL0xtbfIcaT9wjKHr8RbDVddVHyTfAAsrekwKmP1" crossorigin="anonymous">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.bundle.min.js" integrity="sha384-ygbV9kiqUc6oa4msXn9868pTtWMgiQaeYH7/t7LECLbyPA2x65Kgf80OJFdroafW" crossorigin="anonymous"></script>
<!-- PLOTLY JS -->
<script src='https://cdn.plot.ly/plotly-latest.min.js'></script>
</head>
<body class="h-100 d-flex flex-column">
<nav class="navbar navbar-expand-lg navbar-dark bg-primary">
<a class="navbar-brand" href="#">Title</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavAltMarkup" aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNavAltMarkup">
<div class="navbar-nav">
<a class="nav-item nav-link" href="#">Link 1</a>
<a class="nav-item nav-link" href="#">Link 1</a>
<a class="nav-item nav-link" href="#">Link 1</a>
<a class="nav-item nav-link" href="#">Link 1</a>
</div>
</div>
<div class="d-flex">
<a class="btn btn-danger mr-xl-3 mr-l-3" href="{{ url_for('reset') }}" role="button">Reset</a>
</div>
</nav>
<div id="content" class="flex-grow-1 container-fluid">
<div class="row h-100">
<div class="col-xl-6 h-100">
<div class="container-fluid h-100">
<h2>File Picker</h2>
</div>
</div>
<div class="col-xl-6 h-100">
<div class="container-fluid h-100 d-flex flex-column">
<h2>This is my overflowing list view</h2>
<div class="flex-grow-1">
<ul class="overflow-scroll">
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
<li class="list-group-item">Element</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
` elemement to take the remaining height of the right column instead of setting it to a specific height using fixed pixel or percent measures.
– JohnDizzle Feb 09 '21 at 17:28