gpt4 book ai didi

javascript - 通过从父 div 中减去另一个子 div 的高度来计算子 div 的高度

转载 作者:行者123 更新时间:2023-11-28 04:57:42 25 4
gpt4 key购买 nike

我的页面设置有页眉部分、左侧边栏、内容和页 footer 分。在这里查看我的 jsfiddle:https://jsfiddle.net/maryjames0/3vxdzga6/ .

这是 HTML:

<div id="container">
<div id="header">
Some Header Content
</div>
<div id="main">
<div id="sidebar">
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec placerat sodales neque, in varius est accumsan id. Ut nec fringilla purus, et sodales erat. Fusce pretium dapibus erat. Aenean ornare in felis quis commodo. Duis vulputate tellus sed faucibus aliquet. Suspendisse erat enim, laoreet sit amet enim sollicitudin, varius efficitur arcu. Maecenas molestie fringilla dolor, non pulvinar ante ullamcorper bibendum.</p>
<p>Curabitur quam magna, tempor in posuere vestibulum, porta at est. Fusce cursus leo vel arcu rhoncus dapibus. Fusce vel dictum lectus. Curabitur ligula elit, cursus ac lorem at, interdum fermentum arcu. Morbi eleifend tincidunt justo a tempor. Nulla quis egestas enim, vel iaculis nisi. Duis eros arcu, pulvinar aliquam ante eu, euismod commodo tellus. Phasellus egestas, nulla eu dictum finibus, eros massa aliquam massa, a volutpat sem urna ut purus. Duis egestas erat felis, sed scelerisque elit molestie tincidunt. Phasellus ac lorem ut dolor imperdiet varius. Quisque dapibus dui vitae urna pretium, a tincidunt urna sagittis. Vivamus quis accumsan ex. Mauris in ornare nisl, eu auctor mi. Mauris arcu risus, pharetra vel metus eu, feugiat tristique lectus. Aliquam erat volutpat. Vivamus ex lorem, pellentesque in pharetra ac, vulputate et massa.</p>
</div>
<div id="content">
<div id="top">
<p>Curabitur rhoncus quis diam quis tristique. Fusce aliquam lobortis elit. Duis dapibus maximus interdum. Praesent vitae mi venenatis, tincidunt enim ac, malesuada urna. Sed mollis massa at felis bibendum dapibus. Nunc vel sodales justo, at ultrices quam. Nullam in ornare sem. Praesent vestibulum interdum orci, in dignissim eros. Nunc lobortis, ligula id pellentesque sodales, sapien erat accumsan tellus, et finibus nunc eros auctor est. Integer sem odio, tincidunt sed purus sed, porta lacinia magna. Nulla sed sollicitudin risus. Aenean pulvinar maximus dui id luctus. Donec accumsan fermentum ante, ut gravida augue interdum ut. Quisque volutpat blandit luctus. Duis mollis eu odio gravida dictum. Nullam interdum tortor sit amet semper bibendum.</p>
</div>
<div id="bottom">
<p>Etiam euismod mattis sem pretium fringilla. Nunc lobortis ante diam, ac feugiat sem consectetur in. In non neque mattis, elementum ante ornare, blandit metus. Morbi eu sapien id elit sagittis commodo. Morbi sed velit eget dui vestibulum faucibus mattis vel lacus. Vestibulum a fringilla risus. Nulla convallis, lacus ut suscipit hendrerit, nisi lacus interdum neque, a commodo mauris diam in enim. Donec venenatis, nulla eu elementum ultrices, mi est vestibulum lectus, vel eleifend mi nisi quis lectus. Suspendisse commodo, risus id porttitor gravida, ex odio vulputate magna, eget elementum lectus mauris ac turpis. Nulla feugiat vestibulum viverra. Nullam vitae justo tristique purus tincidunt fermentum. Cras pretium purus elit, non interdum felis fermentum quis.</p>
</div>
</div>
</div>
<div id="footer">
Some Footer Content
</div>
</div>

还有 CSS:

#container {max-width: 1125px; margin-right: auto; margin-left: auto;}
#header {background-color: #c1d1dc;}
#main {overflow: hidden; padding: 0; margin: 0;}
#sidebar {float: left; display: inline; width: 305px; background-color: #d4d7d9; box-sizing: border-box; padding-left: 15px; padding-right: 15px; padding-top: 10px; padding-bottom: 99999px; margin-bottom: -99999px;}
#content {padding-bottom: 99999px; margin-bottom: -99999px; overflow: hidden; background-color: pink;}
#top {padding: 0 15px 4px 15px; margin: 0 0 0 0; background-color: #FFFFFF; overflow: hidden;}
#bottom {background-color: #c1d1dc; overflow: hidden; padding: 0 15px 10px 15px; box-sizing: border-box;}
#footer {background-color: #8EA4B8;}

父 div (#content) 包含两个子 div(#top 和 #bottom)。所有这些 div 以及侧边栏 div (#sidebar) 的内容量都是可变的,因此它们的高度都是可变的。

我想知道的是,是否可以根据#content的(可变)高度减去#top的(可变)高度来计算#bottom的高度,以便#bottom填充剩余的高度#top 之后#content 中的空格。目标是让#bottom 及其背景颜色(以及它也将具有的边框)向下延伸至侧边栏。

注意:不幸的是我不能使用 Flexbox(需要为 IE8 和 IE9 设计)。

此处接受的答案:Pass variable into jQuery CSS value to calculate height与我想做的一致,但使用可变高度父 div 而不是 100% 或 100vh。

我也接受不使用计算的解决方案;什么都行。非常感谢!

最佳答案

在dom准备好后运行这样的东西

$(function() {
var maxHeight = Math.max($("#sidebar").height(), $("#content").height());
$("#bottom").height(maxHeight - $("#top").height());
});

关于javascript - 通过从父 div 中减去另一个子 div 的高度来计算子 div 的高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40296380/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com