html - 图表 Div 窗口高度的 100%

标签 html css

所以我有一个 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/

相关文章:

html - 如何自定义顶部显示标签的 Angular Material 步进器组件?

javascript - 将 CSS .class 作为参数传递给 javascript 函数

html - 我的宽度计算与像素不匹配

javascript - 每 x 毫秒刷新浏览器中的图像

javascript - 如何使用 JS 检查元素是否包含带有 'while' 函数的文本?

html - 如何设置每个框的字体大小和填充百分比相等?

html - 如何使用 FlexBox 制作具有百分比高度的包裹 div

css - javascript 谷歌地图缩放到零时为空灰色背景

javascript - 简单的 jQuery 内容 slider

javascript - 以 click.box 的 CENTER 为原点保存鼠标点击坐标