ดังต่อไปนี้HTML
และCSS
.container {
position: relative;
border: solid 1px red;
height: 256px;
width: 256px;
overflow: auto;
}
.full-height {
position: absolute;
top: 0;
left: 0;
right: 128px;
bottom: 0;
background: blue;
}
<div class="container">
<div class="full-height">
</div>
</div>
ด้านในdiv
จะขึ้นเต็มส่วนหัวของภาชนะตามต้องการ ถ้าตอนนี้ฉันเพิ่มอื่น ๆ โฟลว์เนื้อหาลงในคอนเทนเนอร์เช่น:
.container {
position: relative;
border: solid 1px red;
height: 256px;
width: 256px;
overflow: auto;
}
.full-height {
position: absolute;
top: 0;
left: 0;
right: 128px;
bottom: 0;
background: blue;
}
<div class="container">
<div class="full-height">
</div>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Aspernatur mollitia maxime facere quae cumque perferendis cum atque quia repellendus rerum eaque quod quibusdam incidunt blanditiis possimus temporibus reiciendis deserunt sequi eveniet necessitatibus
maiores quas assumenda voluptate qui odio laboriosam totam repudiandae? Doloremque dignissimos voluptatibus eveniet rem quasi minus ex cumque esse culpa cupiditate cum architecto! Facilis deleniti unde suscipit minima obcaecati vero ea soluta odio cupiditate
placeat vitae nesciunt quis alias dolorum nemo sint facere. Deleniti itaque incidunt eligendi qui nemo corporis ducimus beatae consequatur est iusto dolorum consequuntur vero debitis saepe voluptatem impedit sint ea numquam quia voluptate quidem.
</div>
จากนั้นคอนเทนเนอร์จะเลื่อนตามที่ต้องการอย่างไรก็ตามองค์ประกอบที่อยู่ในตำแหน่งที่แน่นอนจะไม่ถูกยึดไว้ที่ด้านล่างของคอนเทนเนอร์อีกต่อไป แต่จะหยุดอยู่ที่ด้านล่างที่สามารถดูได้เริ่มต้นของคอนเทนเนอร์ คำถามของฉันคือ; จะมีวิธีของการมีองค์ประกอบตำแหน่งอย่างเป็นความสูงเลื่อนสมบูรณ์ของภาชนะที่ใช้บรรจุโดยไม่ต้องใช้ใด ๆJS
?
top: 0;
ก็ใช้งานไม่ได้อีกต่อไป
innerHeight
คำนวณมันจะยาก น่าเสียดายที่ใช้position:fixed
ไม่ได้ในคอนเทนเนอร์เนื่องจากไม่อยู่ในขั้นตอนดังนั้น 'วิธีแก้ปัญหา' นี้จะไม่ทำงานด้วย :(