所以我有一个 chartist.js 图表,我不想填满整个页面的高度。问题是,它应该只填充相对于父容器的高度。因此,如果我将同级 div 添加到图表 div,它应该仍然不会溢出窗口大小。
这是一个 fiddle :https://jsfiddle.net/dckuLxyf/
这是我的 html 和 javascript:
<div class="container fill">
<div><h1>My Chart</h1></div>
<div class="ct-chart ct-perfect-fourth my-chart"></div>
</div>
<script>
var data = {
labels: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'],
series: [
[5, 2, 4, 2, 0]
]
};
new Chartist.Line('.ct-chart', data);
</script>
这是我的 CSS:
html {
height: 100%;
background-color: blue;
}
body {
height: 100%;
background-color:pink;
}
.fill {
min-height: 100%;
height: 100%;
background-color: green;
}
.my-chart {
height: 100%;
min-height: 100%;
background-color:yellow;
}
如果我删除 h1 div 我得到了我想要的行为,但我也希望在它上面有 H1,并且仍然以相同的方式运行(不会在屏幕下方溢出)我如何实现这个?我试过改变每个 div 的位置,但没有任何运气。我想我错过了在这种情况下定位如何工作的细节?
最佳答案
您可以使用 flex 来帮助将所有内容整合在一起:https://jsfiddle.net/dckuLxyf/4/
html {
height: 100%;
background-color: blue;
}
body {
height: 100%;
background-color:pink;
}
.fill {
min-height: 100%;
height: 100%;
background-color: green;
display:flex;
flex-flow:column;
}
.my-chart {
flex:1 1 0;
overflow:hidden;
background-color:yellow;
}
关于html - 图表 Div 窗口高度的 100%,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35602530/