好的试试这个http://jsfiddle.net/7KhXd/1/
这是html摘要:
<div id="container">
<div id="left-nav">
<!-- left nav content-->
</div>
<div id="main">
<div>
<!-- main body contnent-->
</div>
</div>
</div>
CSS:
#container {
background-color: grey;
width: 1000px;
}
#main {
margin-left:20em;
background-color: white;
padding-left: 2em;
}
#main > div {
background-color: grey; /* so that main has the same color as nav bar if necessary */
}
#left-nav {
width: 19em;
float: left;
}
解释:
这个想法是你不要让左侧导航栏与主体的长度相同。而是希望它看起来好像是相同的长度。你可以通过给它一个背景颜色来实现这一点延伸与主体相同的长度(不管它有多短)..
所以你有一个容器div(即包装器div)并给它一个背景颜色..并创建一个主div并给它一个左边距,在那个左边距你漂浮在导航栏中..
这样,两者中最长的一个(主栏或导航栏)..另一个将具有相同的背景颜色..您只需放置一个填充以在视觉上将它们分开