3列布局,左右列固定。右列在较小的屏幕上流入中间列

时间:2011-07-27 17:37:25

标签: fluid-layout css

HTML设置

<div id="fixed-wrapper">
<div id="header">
        <h1>Site Name</h1>
</div>
<div id="leftCol"></div>
<div id="centerCol"></div>
<div id="rightCol"></div>

CSS:

#fixed-wrapper{
    min-width: 1264px;
}
#header{
    width: 100%;
    height: 75px;   
    text-align: center;
}
#header h1 
{
    line-height: 75px;   
}
 #centerCol {
    margin-left: 310px;
    margin-right: 360px;
    height: 100%;
    min-width: 604px;
}
#rightCol {
    width: 285px;
    height: auto;
    position: absolute;
    top: 75px;
    right: 0;
    margin-right: 75px;
}
#leftCol {
    width: 235px;
    height: auto;
    position: absolute;
    top: 75px;
    left: 0;
    margin-left: 75px; 
}

问题是中心列需要有一个最小宽度,但右列不应移动到中间列。

2 个答案:

答案 0 :(得分:4)

尝试将中心列的宽度设置为自动,而不是定义其最小宽度

 #centerCol {
    margin-left: 310px;
    margin-right: 360px;
    height: 100%;
    width: auto;
}

答案 1 :(得分:0)

使#fixed-wrapper相对定位,以便#leftCol和#rightCol完全相对于它而不是文档正文。

#fixed-wrapper{
    min-width: 1264px;
    position: relative;
}

jsFiddle example

相关问题