【发布时间】:2014-01-13 22:14:42
【问题描述】:
我正在尝试使我的页面看起来像 Facebook Android 应用程序。该应用程序可以概括为具有 3 列布局,只有中心列具有标题(没有页脚,但在我的要求中我还需要一个页脚)。
如下图所示
红色和蓝色的 div 是左右侧边栏。绿色和紫色的 div 是中心 div。紫色 div 是页眉和页脚 div,将分别贴在页面的顶部和底部。
还有一个要求是标题(顶部紫色)上会有按钮来隐藏和显示左右侧边栏。最初只有中心 div 是可见的,其余的可以在需要时被调用。到目前为止,这是我的代码。 (我无法获得中心 div 的宽度)
HTML 代码
<html>
<head>
<title>Sample</title>
<link rel="stylesheet" href="index.css" type="text/css" />
</head>
<body>
<div id="main">
<div id="leftBar" class="main">Left Bar</div>
<div id="content" class="inner">
<div id="header">Head</div>
<div id="body">Body</div>
<div id="footer">Footer</div>
</div>
<div id="rightBar" class="main">Right Bar</div>
</div>
</body>
</html>
CSS
body{
margin: 0px;
}
div.inner{
height: 500px;
width: 50%;
background: red;
}
div.main{
background: lime;
height: 200px;
overflow: hidden;
position: relative;
}
#leftBar{
float: left;
}
#content{
position: relative;
height: 100%;
float: left;
}
#rightBar{
float: right;
}
#header{
position: fixed;
top: 0px;
background: blue;
}
#body{
margin-top: 40px;
position: relative;
}
#footer{
position: absolute;
bottom: 0px;
}
我还在下面链接的小提琴中添加了 JavaScript 代码 http://jsfiddle.net/mv6Bj/1/
宽度应使中心 div 占屏幕的 100% 宽度,当右/左切换进入图片时,它们应到达其位置并将中心 div 分别推向左侧或右侧。这符合标准的 Facebook 应用功能。
这些是我现在遇到的问题
- 中心 div 不是 100%,也不会随着元素的出现和消失而缩放
- 中心 div 的高度不是 100%(它在 Chrome 上,但奇怪的是它不在 JSFiddle 上)
- 当我点击左侧时,leftBar 消失,内容 div 向左移动,但标题 div 保持原位。
【问题讨论】:
标签: javascript jquery html css