| <!DOCTYPE html> <html lang="en"> <head>   <meta charset="UTF-8">   <meta name="viewport" content="width=device-width, initial-scale=1.0">   <title>Document</title>   <style>     html,body {       margin: 0; padding: 0;     }     * {       box-sizing: border-box;     }     .container {       overflow: auto;     }     .container .component{       width: 10vw;       height: 10vw;       margin-bottom: 10px;       background: orange;     }     header {       height: 100px;       background: pink;     }     footer {       position: fixed;       height: 100px;       background: red;       left: 0; right: 0;       bottom: 0;     }   </style> </head> <body>   <div class="main">     <header>       Header Tabbar     </header>     <div id="container" class="container">       <div class="component">1</div>       <div class="component">2</div>       <div class="component">3</div>       <div class="component">4</div>       <div class="component">5</div>       <div class="component">6</div>       <div class="component">7</div>       <div class="component">8</div>       <div class="component">9</div>       <div class="component">10</div>     </div>     <footer id="footer">       Footer Tabbar     </footer>   </div>   <script>     addEventListener("DOMContentLoaded", (event) => {       const footerDom = document.getElementById('footer')       const containerDom = document.getElementById('container')       const { top: footerOffsetTop } = footerDom.getBoundingClientRect();       const { top: containerOffsetTop } = containerDom.getBoundingClientRect();       const scrollHeight = footerOffsetTop - containerOffsetTop;       containerDom.style.height = scrollHeight + 'px'     });   </script> </body> </html> |