Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何使这些面板在不提供固定高度的情况下具有100%的高度_Jquery_Html_Css_Twitter Bootstrap_Internet Explorer 8 - Fatal编程技术网

Jquery 如何使这些面板在不提供固定高度的情况下具有100%的高度

Jquery 如何使这些面板在不提供固定高度的情况下具有100%的高度,jquery,html,css,twitter-bootstrap,internet-explorer-8,Jquery,Html,Css,Twitter Bootstrap,Internet Explorer 8,我试图让这些面板占据其所在容器的全长,而不提供固定高度,最初我希望它们占据页面的所有高度 小提琴- HTML 我不想提供这个 height: 200px; max-height: 200px; 我想我知道你想要什么 在折叠元素上设置高度时,Bootstrap JS将使用其样式动画覆盖该元素 我找到的解决方案是设置max height .panel-collapse{ max-height: 200px; overflow-y: auto; } 我希望这就是你的想法 这看起来不错

我试图让这些面板占据其所在容器的全长,而不提供固定高度,最初我希望它们占据页面的所有高度

小提琴-

HTML

我不想提供这个

height: 200px;
  max-height: 200px;

我想我知道你想要什么

在折叠元素上设置高度时,Bootstrap JS将使用其样式动画覆盖该元素

我找到的解决方案是设置
max height

.panel-collapse{
  max-height: 200px;
  overflow-y: auto;
}

我希望这就是你的想法


这看起来不错

.panel { height: 300px; }

#collapseOne, #collapseTwo {
  height:90%;
  max-height:90%;
  overflow-y:auto;

}
。。。要正确使用%heights,您需要为父级指定一个高度

编辑:

然而,也可以说父面板的高度为:100%;但是在堆栈中的某个点,除非您一直使用height:100%到达html标记,否则您将需要具有固定高度的元素,以便浏览器能够正确计算高度

编辑2:

在聊天中与您进一步讨论后,很可能这就是您所需要的


如果仅从面板元素中删除属性最大高度,则父元素将一直向下扩展

#collapseOne, #collapseTwo {
 overflow-y:auto;  
}

小提琴:

除非您需要支持Opera Mini,否则您应该能够使用
vh
和可能的
calc
。你会想自己玩它并调整数字,但我认为类似的方法应该会奏效(从当前目标更改为以下目标):


编辑:为了清楚起见,
vh
指的是“视口高度”,因此它特定于最终用户设备的视口,并且
calc
允许您让浏览器处理一些简单的数学运算。如果您知道某些其他元素采用固定数量的像素,则可以从视口高度中减去它们,并保持在视口内。

我不知道您是否在寻找全高。无论如何,这将删除内容的滚动条。请让我知道

#collapseOne, #collapseTwo {
height: auto;
max-height: none;
overflow-y: auto;
}
看看Flexbox()


这有很多可能确保两个容器的高度相同

在处理流体布局时,我建议在css中使用%来表示从根元素到所有子元素的宽度和高度,无论如何,这里有一个jQuery的小调整来实现您的要求,我希望这有帮助:)

$(文档).ready(函数(){
变量$offHeight=0
函数updateHeight(){
var$tempHeight=0;
变量$wrapper=$('.mainContainer');
$tempHeight+=$('.row')。而不是('.mainRow')。outerHeight();
$tempHeight+=$('#panel1')。查找('.panel heading')。outerHeight();
$tempHeight+=$(“#面板2”)。查找(“.panel heading”)。outerHeight()+5+4;//+5用于面板2页眉的边距顶部,而+4用于调整
$offHeight=$wrapper.height()-$tempHeight;
$('#collapseOne').css({
“最大高度”:$offHeight
});
$('#collapseTwo').css({
“最大高度”:$offHeight
});
}
updateHeight();
$('.panel heading')。在('click',function()上{
updateHeight();
});
$(窗口)。调整大小(函数(){
updateHeight();
});
});
/*使“容器”的宽度和高度固定*/
身体,
html{
宽度:100%;
身高:100%
}
/*将“容器”填充到其父级宽度和高度*/
.主集装箱{
宽度:100%;
身高:100%
}
/*额外保证金底部固定*/
#手风琴{
保证金:0
}
.小组标题a:之后{
字体系列:“字形图标半身人”;
内容:“\e114”;
浮动:对;
}
.面板标题a.折叠:之后{
内容:“\e080”;
}
#collapseOne,
#陷落网{
溢出y:自动;
}

{{vm.Title}
返回
小组1
  • 面板1删除
  • 面板1删除
  • 面板1删除
  • 面板1删除
  • 面板1删除
  • 面板1删除
  • 面板1删除
  • 面板1删除
  • 面板1删除
  • 面板1删除
  • 面板1删除
  • 面板1删除
  • 面板1删除
  • 面板1删除
  • 小组2
    • 面板2删除
    • 面板2删除
    • 面板2删除
    • 面板2删除
    • 面板2删除
    • 面板2删除
    • 面板2删除
    • 面板2删除
    • 面板2删除
    • 面板2删除
    • 面板2删除
    • 面板2删除
    • 面板2删除
    • 面板2删除
    • 面板2删除
    • 面板2删除
      .panel { height: 300px; }
      
      #collapseOne, #collapseTwo {
        height:90%;
        max-height:90%;
        overflow-y:auto;
      
      }
      
      #collapseOne, #collapseTwo {
       overflow-y:auto;  
      }
      
      #panel1, #panel2 {
        max-height: calc(100vh - 150px);
        overflow-y:auto;
      }
      
      #collapseOne, #collapseTwo {
      height: auto;
      max-height: none;
      overflow-y: auto;
      }