我不确定如何最好地解释这一点,但基本上我想要的是一个容器 div,它是我屏幕的 100%,其中有两个 div,它们是高度的 50%。我想要它,以便用户可以在容器 div 高度的 20%-80% 之间调整顶部 div 的大小,并让下部 div 自动填充容器而不会溢出它。我遇到了两个问题:
如果我将顶部 div 的高度设置为 50%(使用 CSS 或将高度设置为容器 offsetHeight 一半的 DOMContentLoaded 函数),它将不允许用户将其缩小到该大小以下。
显然 onresize 在 Chrome 中的 div 中不起作用,所以我找不到修改较低 div 高度的方法。
我的问题是:
- 这甚至可能吗?
- 在两个div之间放置一些元素并使用html5可拖动会更好吗?我需要支持的唯一浏览器是 Google Chrome。
- 还是我最好使用框架?
不允许使用外部 JavaScript 库。所以没有jQuery。
这是我到目前为止所拥有的:
<html>
<head>
<script type="text/javascript">
document.addEventListener("DOMContentLoaded", function set_top_div_height() {
var container_height = document.getElementById('container').offsetHeight;
var top_div = document.getElementById('top');
top_div.style.height = container_height / 2 + "px";
});
</script>
<style type="text/css">
div {
-moz-box-sizing:border-box;
-webkit-box-sizing:border-box;
box-sizing:border-box;
}
#container {
width: 100%;
height: 100%;
border: solid black 1px;
overflow: hidden;
}
#top {
width 100%;
min-height: 20%;
max-height: 80%;
resize: vertical;
overflow: auto;
border-bottom: solid black 1px;
background-color: #333;
}
#bottom {
width: 100%;
height: 50%;
background-color: #ccc;
}
</style>
</head>
<body>
<div id="container">
<div id="top">
Top
</div>
<div id="bottom">
Bottom
</div>
</div>
</body>
</html>