100%高度div的主要问题
/* Left menu */
.leftMenu{
width: 200px;
border:2px solid green;
float:left;
background-color:#c0c0c0;
}
/* Main Content area */
.mainBox{
border:2px solid red;
background-color: #ffffff;
}
.mainWrapper{
border:2px solid white;
}
如何让
<div class="mainWrapper">
<div class="leftMenu">
left
</div>
<div class="mainBox">
main<br /><br /><br /><br /><br />
</div>
<div class="clear"></div>
</div>
火焰将左侧菜单延伸到底部?
请注意,我尝试过人造柱,但它们不起作用,因为出于某种原因白色主框位于前面。
/* Left menu */
.leftMenu{
width: 200px;
border:2px solid green;
float:left;
background-color:#c0c0c0;
}
/* Main Content area */
.mainBox{
border:2px solid red;
background-color: #ffffff;
}
.mainWrapper{
border:2px solid white;
}
With
<div class="mainWrapper">
<div class="leftMenu">
left
</div>
<div class="mainBox">
main<br /><br /><br /><br /><br />
</div>
<div class="clear"></div>
</div>
How the blazes do I get the left menu to extend to the bottom?
Please note I've tried faux columns but they just don't work as the white main box just is at the front for some reason.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
这又如何呢?
http://jsfiddle.net/PH3t2/
我添加了
postion:absolute
,top:0
和bottom:0
到你的左侧菜单我已经给了 mainBox
padding-left: 205px
我已经给了 mainWrapper
position:relative
请随意向 mainBox 添加内容,以查看 leftMenu 也会增长。
要完成此操作并使其在 IE6 中工作,请添加:
What about this?
http://jsfiddle.net/PH3t2/
I've added
postion:absolute
,top:0
andbottom:0
to your leftmenuI've given mainBox
padding-left: 205px
I've given mainWrapper
position:relative
Feel free to add content to mainBox to see that leftMenu grows as well.
To finish this off and make it work in IE6, add:
使用假列时,需要将背景图片设置为.mainWrapper。
将 .mainBox 背景设置为透明,并将 .mainWrapper 背景设置为左侧 200px 灰色,所有其他宽度设置为白色。
When using faux columns, you need to set background image to .mainWrapper.
Set .mainBox background to transparent and make .mainWrapper background as 200px gray at left side and all other width to white.
您需要为
.mainWrapper
设置固定高度,例如100px
;然后将.leftMenu
的高度设置为100%;
编辑: 根据您的评论,我不确定是否可以使用纯 css 。如果 JavaScript 解决方案可以接受,那么您可以使用 jquery 和以下代码:
实例: http ://jsbin.com/udowu4/2
you need set a fixed height for the
.mainWrapper
for example100px
; and then you set the height of.leftMenu
to100%;
Edit: According your comment, I am not sure if it possible with pure css. If it's acceptable a javascript solution then you can use jquery and the following code:
Live example: http://jsbin.com/udowu4/2
CSS 仿列是最好的解决方案。以下解决方案可能有效,但最终可能会遇到其他问题。注意:无论哪一列更高,这都有效。
CSS Faux columns is the best possible solution. The following solution might work but you could end up with other problems. Note: This works regardless of which column is taller.