width:100%
您可以在#left div 中添加一个负边距,而不是重新排序内容。
http://jsfiddle.net/daCrosby/FGMGB/
HTML
<div id="container">
<div id="left">Left Col</div>
<div id="right">Right Col</div>
</div>
CSS
#container {
width: 100%
}
#left {
float: left;
width: 100%; /* full width of #container */
margin-right: -325px; /* #right's width + left & right padding & margin */
}
#right {
float: left;
width: 300px;
padding-left: 25px;
}
编辑
根据您在此处其他地方的评论,您#right
需要position:fixed
. 这会将元素完全从元素堆栈中取出,因此float
是不必要的(并且无论如何都不会工作)。相反,只需设置固定位置即可。
相关的 CSS,使用与上面相同的 HTML
#container2 {
width: 100%
}
#left2 {
width: 100%; /* full width of #container */
margin-right: -325px; /* #right's width + left & right padding & margin */
background:#ddd;
}
#right2 {
position:fixed;
right:8px;
top:28px; /* set the right and top to whatever positioning you need. */
width: 300px;
padding-left: 25px;
background:#444;
}
jsFiddle