需要3列CSS布局。

| 在这里查看布局,我想将整个页面的最小宽度限制为600px。我尝试设置内容的最小宽度,但是右侧与之重叠。 有人可以建议一种纠正此问题的方法,还是可以满足此要求的其他布局? 还要记住的另一件事是内容在代码中的显示顺序-1)2)3),如页面所示。任一列都应该能够向下移动页脚,我想再定义两个区域:当前的页眉在代码中显示为4),而5)在4)上方是一个小的内容栏 因此,简而言之,页面内容区域将在页面中这样显示(从代码的顶部到底部,从1开始顺序):
7) top menu
5) header
4) contentbar
2) 1) 3)
6) (footer)
谢谢。 更新资料 在Midas的一点帮助下,我几乎可以得到想要的东西。下面的问题是,当减小浏览器宽度时,右侧列不会将页脚向下移动,也不会锁定在最小宽度处。另外,我仍然不能将所有内容压入顶部菜单栏,因为它只是与标题重叠:
<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"
\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">
<html xmlns=\"http://www.w3.org/1999/xhtml\">
<head>
    <title>Holygrail1</title>
    <meta http-equiv=\"content-type\" content=\"text/html; charset=iso-8859-1\">
<style type=\"text/css\">
* { 
    margin:0; padding:0 
}
body { 
    font:76% Arial, Helvetica, sans-serif 
}
p { 
    margin:0 10px 10px 
}
a {
    display:block; color:#981793; padding:10px 
}

#container 
{
    margin-top:104px; min-height:400px;
    min-width:700px;
    top:20px;
}
#wrapper { 
    float:left; width:100% 
}
#content { 
    margin: 0 200px 0 200px
}
#content p {    
    line-height:1.4 
}
#leftbar { 
    background:#b9caff; float:left; width:200px; margin-left:-100% 
}
#rightbar { 
    position: absolute;
    background:#ff8539; 
    right:0px;
    width:200px; 
}
#header { 
    position:absolute; top:0; width:100%; height:266px;
}
#header h1 { 
    line-height:80px; padding-left:10px; background:#eee; color:#79b30b 
}
#contentbar { 
    position:absolute; top:80px; width:100%; z-index:1 
}

#footer, #contentbar { 
    background:#333; color:#fff 
}
#footer p, #contentbar p { 
    margin:0; padding:5px 10px; line-height:14px 
}
#footer { 
    clear:left; width:100% 
}

#topbar { 
    position:absolute; top:0px; width:100%; z-index:1;
    height: 20px;
    background-color:red;
}

</style>
</head>
<body>
    <div id=\"container\">
        <div id=\"wrapper\">
            <div id=\"content\">
                <p><strong>1) Content here.</strong> column long long column very long fill fill fill long text text column text silly very make long very fill silly make make long make text fill very long text column silly silly very column long very column filler fill long make filler long silly very long silly silly silly long filler make column filler make silly long long fill very.</p>
            </div>
        </div>
        <div id=\"leftbar\">
            <p><strong>2) leftbar here.</strong> long long fill filler very fill column column silly filler very filler fill fill filler text fill very silly fill text filler silly silly filler fill very make fill column text column very very column fill fill very silly column silly silly fill fill long filler</p>
        </div>
        <div id=\"rightbar\">
            <p><strong>3) More stuff here.</strong> very text make long column make filler fill make column column silly filler text silly column fill silly fill column text filler make text silly filler make filler very silly make text very very text make long filler very make column make silly column fill silly column long make silly filler column filler silly long long column fill silly column very</p>
                <p>very make make fill silly long long filler column long make silly silly column filler fill fill very filler text fill filler column make fill make text very make make very fill fill long make very filler column very long very filler silly very make filler silly make make column column</p>
                <p>fill long make long text very make long fill column make text very silly column filler silly text fill text filler filler filler make make make make text filler fill column filler make silly make text text fill make very filler column very</p>
                <p>column text long column make silly long text filler silly very very very long filler fill very fill silly very make make filler text filler text make silly text text long fill fill make text fill long text very silly long long filler filler fill silly long make column make silly long column long make very</p>
        </div>
    </div>
    <div id=\"contentbar\"><p>4) Content bar here.</p></div>
    <div id=\"header\"><h1>5) Header</h1></div>
    <div id=\"footer\"><p>6) Here it goes the footer</p></div>
    <div id=\"topbar\"><p>7) Top Bar </p></div>
</body>
</html>
    
已邀请:
        这是您检查过的布局。排序就像您想要的一样,我必须对标题和\'content bar \'使用
position:absolute
<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"
\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">
<html xmlns=\"http://www.w3.org/1999/xhtml\">
<head>
    <title>Layout 19</title>
    <meta http-equiv=\"content-type\" content=\"text/html; charset=iso-8859-1\">
    <style type=\"text/css\">
* { margin:0; padding:0 }
body { font:76% Arial, Helvetica, sans-serif; min-width:600px }
a { display:block; color:#981793; padding:10px }
#navigation, #extra, #header, #contentbar { position:absolute; top:0 }
#container { margin-top:104px; position:relative }
#container p { margin:0 10px 10px }
#content { margin:0 200px }
#content p { line-height:1.4 }
#navigation { background:#b9caff; width:200px }
#extra { background:#ff8539; width:200px; right:0 }
#header { width:100% }
#header h1 { line-height:80px; padding-left:10px; background:#eee; color:#79b30b }
#contentbar { margin-top:80px; width:100% }
#footer, #contentbar { background:#333; color:#fff }
#footer p, #contentbar p { padding:5px 10px; line-height:14px }
    </style>
</head>
<body>
    <div id=\"container\">
        <div id=\"content\">
            <p><strong>1) Content here.</strong> column long long column very long fill fill fill long text text column text silly very make long very fill silly make make long make text fill very long text column silly silly very column long very column filler fill long make filler long silly very long silly silly silly long filler make column filler make silly long long fill very.</p>
            <p>very make make fill silly long long filler column long make silly silly column filler fill fill very filler text fill filler column make fill make text very make make very fill fill long make very filler column very long very filler silly very make filler silly make make column column</p>
            <p>fill long make long text very make long fill column make text very silly column filler silly text fill text filler filler filler make make make make text filler fill column filler make silly make text text fill make very filler column very</p>
            <p>column text long column make silly long text filler silly very very very long filler fill very fill silly very make make filler text filler text make silly text text long fill fill make text fill long text very silly long long filler filler fill silly long make column make silly long column long make very</p>
        </div>
       <div id=\"navigation\">
            <p><strong>2) Navigation here.</strong> long long fill filler very fill column column silly filler very filler fill fill filler text fill very silly fill text filler silly silly filler fill very make fill column text column very very column fill fill very silly column silly silly fill fill long filler</p>
        </div>
        <div id=\"extra\">
            <p><strong>3) More stuff here.</strong> very text make long column make filler fill make column column silly filler text silly column fill silly fill column text filler make text silly filler make filler very silly make text very very text make long filler very make column make silly column fill silly column long make silly filler column filler silly long long column fill silly column very</p>
        </div>
    </div>
    <div id=\"contentbar\"><p>4) Content bar here.</p></div>
    <div id=\"header\"><h1>5) Header</h1></div>
    <div id=\"footer\"><p>6) Here it goes the footer</p></div>
</body>
</html>
    
        由于这不是一个按代码付费的网站,因此我不会为您编写整个代码。 这可能是一个愚蠢的问题,但这对您不起作用吗?
body {
  min-width: 600px;
}
    
        可以在
<body>
标签中或最外面的
<div>
标签周围将本示例设置为常量
width:600px
。 可以在A List Apart-Holy Grail中找到有关此布局的更详细说明。     

要回复问题请先登录注册