Javascript 如何根据jQuery UI布局中的内容调整div高度
我正在尝试使用一个简单的垂直分割条 . 这是我的测试页面:Javascript 如何根据jQuery UI布局中的内容调整div高度,javascript,css,jquery-ui-layout,Javascript,Css,Jquery Ui Layout,我正在尝试使用一个简单的垂直分割条 . 这是我的测试页面: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>jQuery UI Layout Vertical Splitter</title> <link type="text/css" rel="stylesheet" href="../Content/jquery
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>jQuery UI Layout Vertical Splitter</title>
<link type="text/css" rel="stylesheet" href="../Content/jquery.ui.layout.css" />
<style type="text/css">
body {
font-family: Calibri;
font-size: 11pt;
margin: 0px;
}
.RequiredBorder {
border: 3mm solid silver;
margin: 3mm;
padding: 3mm;
}
.ui-layout-center, .ui-layout-east, .ui-layout-west, .ui-layout-north, .ui-layout-south {
border: 1px solid purple;
}
#SplitContainer {
border: 1px solid blue;
}
</style>
<script type="text/javascript" src="../Scripts/jquery-1.8.0.min.js"></script>
<script type="text/javascript" src="../Scripts/jquery-ui-1.8.23.min.js"></script>
<script type="text/javascript" src="../Scripts/jquery.layout.min.js"></script>
<script type="text/javascript">
var myLayout;
$(document).ready(function () {
myLayout = $('#SplitContainer').layout({
center__minWidth: 100,
west__minSize: 100,
west__size: .5, // 50% of layout width
stateManagement__enabled: false
});
});
</script>
</head>
<body>
<div class="RequiredBorder">
<div id="SplitContainer">
<div class="ui-layout-west">
LEFT
<ul>
<li>Node 1</li>
<li>Node 2
<ul>
<li>Node 2.1</li>
<li>Node 2.2
<ul>
<li>Node 2.2.1</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="ui-layout-center">
RIGHT
<p>
<input type="text" value="Text 1" />
</p>
<p>
<input type="text" value="Text 2" />
</p>
</div>
</div>
</div>
</body>
</html>
硬编码高度不是可接受的解决方案。在真实的网站中,这些div的内容可以是窗口高度的一小部分,也可以是窗口高度的几倍,而
div必须包含整个批次和大小
我已经阅读了jQueryUI布局文档并在Google上搜索过,但到目前为止我还没有找到任何有用的东西。我已经尝试过但不起作用的事情:
#SplitContainer {
display: inline-block;
}
这将以零宽度和零高度呈现容器及其所有内容
#SplitContainer {
position: absolute;
left: 0px;
right: 0px;
top: 0px;
bottom: 0px;
}
这将使容器及其所有内容填充整个浏览器窗口,覆盖其余内容
jQueryUI布局网站上的演示页面没有显示这个问题,因为它们都将最外层的布局直接放在
元素中。当我在我的页面中尝试时,它确实正常工作。但是,真正的网站必须将布局包含在嵌套的
中
我正在IE11和Firefox29中测试这个页面。两者表现出完全相同的行为。嗯,我知道这不起作用,但尝试添加这个?
div{
高度:4em;
宽度:4em;
}
很有可能这不起作用--我不明白你想用它实现什么。不管怎样,我还是试过了,它只是将内容设置为固定大小,这不是我想要的。
#SplitContainer {
position: absolute;
left: 0px;
right: 0px;
top: 0px;
bottom: 0px;
}