gpt4 book ai didi

html - CSS:调整 div 大小,以便中间 div 使用所有剩余空间

转载 作者:可可西里 更新时间:2023-11-01 14:51:55 28 4
gpt4 key购买 nike

我正在尝试制作一个包含三个 div 的 div。第一个和最后一个 div 的大小应该根据它们的内容来确定。如果它们包含 10 行文本,则它们应该足够大以显示而不会溢出或滚动。

中间的 div 应该使用剩余的空间,当没有足够的空间显示其全部内容时应该使用滚动条。

我得到了一个部分解决方案,其中第一个和第三个 block 是固定的,第三个 block 将使用剩余的大小。我不确定如何跳转以允许根据其内容调整第一个和第三个 block 的大小。

如有任何关于如何执行此操作的提示,我们将不胜感激。

这是我目前所拥有的:

enter image description here

<html>

.outerDiv{
/* The contents of this don't really matter */
position: absolute;
height:400px;
top:25px;
}

.innerA{
position: absolute;
top:0ex;
height:3ex; /* How can I set this based on the contents of the div? */
}

.innerB{
position: absolute;
top: 4ex; /* This needs to be based on the size of innerA */
bottom: 4ex; /* This needs to be based on the size of innerC */
overflow-y: scroll;
}

.innerC{
position: absolute;
height:3ex; /* How can I set this based on the contents of the div? */
bottom:0ex;
}

</style>


<div class="outerDiv" style="width:100%; border:1px solid #888888;">

<div class="innerA" style="width:70%; border:1px solid #000088;"></div>

<div class="innerB" style="width:60%; border:1px solid #008800;">a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>a<br/>vv</div>

<div class="innerC" style="width: 50%;border:1px solid #001100;"></div>

</div>


</html>

我的偏好是使用以下方法解决问题:

  1. CSS 和 HTML
  2. 纯标准 JS
  3. JS 与道场
  4. 其他方法

最佳答案

如果你不介意 jquery,你可以计算 A 和 C div 的高度,然后从你的 outerDiv 中减去:

$(".innerB").each(function() {
var outerDivHeight = $('.outerDiv').outerHeight();
var innerAHeight = $('.innerA').outerHeight();
var innerCHeight = $('.innerC').outerHeight();
var innerBHeight = outerDivHeight - innerAHeight - innerCHeight;
$(this).css("height", innerBHeight);
});

这是一个 fiddle :http://jsfiddle.net/Sz6CL/

关于html - CSS:调整 div 大小,以便中间 div 使用所有剩余空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17354132/

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