【发布时间】:2012-04-29 03:59:49
【问题描述】:
我想为管理面板创建一个布局,但我不知道如何让 #nav 和 #content 容器始终位于浏览器窗口的 100%。 100%身高属性的继承没看懂,谁能解释的更清楚一点?
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>index.htm</title>
<link rel="stylesheet" type="text/css" href="main.css">
</head>
<body>
<div id="header">
<img src="./img/header_logo.png" alt="bla"/>
</div><!-- #header -->
<div id="nav">
</div><!-- #nav -->
<div id="content">
asfdg
</div><!-- #content -->
<div class="clear">
</div>
</body>
</html>
main.css
html, body{
font-family: Helvetica, "Helvetica Neue", Arial, Geneva, sans-serif;
margin: 0px;
padding: 0px;
height: 100%;
}
img{
margin: 0px;
padding: 0px;
border-width: 0px;
}
#wrapper{
}
#header{
background: url(img/header_bg.png) repeat-x;
height: 65px;
padding-top: 20px;
padding-left: 25px;
}
#nav{
width: 235px;
float: left;
background-color: #f7f7f7;
border-right: 1px solid #d9d9d9;
height: 100%;
}
#content{
float: left;
width: auto;
padding: 15px;
}
.clear{
clear: both;
}
有什么想法吗?
【问题讨论】:
-
你需要支持哪些浏览器(尤其是IE)?
-
不幸的是,height:100% 依赖于显式定义的父容器的高度。否则,浏览器引擎不知道什么是 100%。最好的方法是通过带有窗口调整大小事件的 javascript。
-
+1。 100% 减去 CSS 中一个不错的功能!例如。在需要 100% 减去一些填充/边框的情况下...嗯,这是旧的非标准 IE 框模型的最大优势:-)
-
@Tomas 你玩过 box-sizing CSS 属性吗?示例jsfiddle.net/post_erasmus/gP5bc。它允许您设置盒子尺寸并强制填充和边框(或只是填充)从盒子尺寸向内呈现。
-
@nohayeye 您是否在下面的答案中查看了我的 jsfiddle 链接?我相信它符合您想要实现的目标。