Web Page Layout: CS134 Web Design & Development
Web Page Layout: CS134 Web Design & Development
Mehmud Abliz
table vs. div
• table
– Pros: supported by all browsers
– Cons: bind style to content; hard to maintain
• div
– Pros: easy to maintain
– Cons: not supported by all browsers
• We recommend – div, reasons:
– CSS is to separate structure from content.
– Supporting most common/popular browsers are
enough. May be it’s time for some people to
upgrade their browsers.
Common Layouts
#Header {
margin:50px 0px 10px 0px;
padding:17px 0px 0px 20px;
border:1px dashed #999;
background-color:#eee;
}
#Content {
margin:0px 50px 50px 200px;
padding:10px;
border:1px dashed #999;
background-color: #eee;
}
#Menu {
position:absolute;
top:100px;
left:20px;
width:150px;
padding:10px;
background-color:#eee;
border:1px dashed #999;
}
2 columns - right menu
2 columns - right menu
#Header {
margin:50px 0px 10px 0px;
padding:17px 0px 0px 20px;
border:1px dashed #999;
background-color:#eee;
}
#Content {
margin:0px 200px 50px 50px;
padding:10px;
border:1px dashed #999;
background-color: #eee;
}
#Menu {
position:absolute;
top:100px;
right:20px;
width:150px;
padding:10px;
background-color:#eee;
border:1px dashed #999;
}
3 columns - flanking menu
3 columns - flanking menu
.content {
position:relative;
width:auto;
min-width:120px;
margin:0px 210px 20px 170px;
border:1px solid black;
padding:10px;
z-index:3; /* This allows the content to overlap
the right menu in narrow windows in good browsers. */
}
#navAlpha {
position:absolute;
width:128px;
top:20px;
left:20px;
border:1px dashed black;
background-color:#eee;
padding:10px;
z-index:2;
}
3 columns - flanking menu
#navBeta {
position:absolute;
width:168px;
top:20px;
right:20px;
border:1px dashed black;
background-color:#eee;
padding:10px;
z-index:1;
}
z-index (or stack level)
body {
text-align:center;
margin:0px;
padding:0px;
font:12px verdana, arial, helvetica, sans-serif;
}
#frame {
width:700px;
margin-right:auto;
margin-left:auto;
margin-top:10px;
text-align:left;
border:1px dashed #999;
background-color: yellow;
}
#topcontent {
background-color: #eee;
}
2 columns – centered, static width
#leftcontent {
float:left;
width:500px;
background-color: green;
}
#rightcontent {
float:left;
width:200px;
background-color: red;
}
#bottomcontent {
background-color:#eee;
text-align:center;
}
3 columns – centered, static width
3 columns – centered, static width
body {
text-align:center;
margin:0px;
padding:0px;
font:12px verdana, arial, helvetica, sans-serif;
}
#frame {
width:750px;
margin-right:auto;
margin-left:auto;
margin-top:10px;
text-align:left;
border:1px dashed #999;
background-color: yellow;
}
#topcontent {
background-color: #eee;
}
3 columns – centered, static width
#centercontent {
float:left;
width:400px;
background-color: green;
}
#leftcontent {
float:left;
width:175px;
background-color: red;
}
#rightcontent {
float:left;
width:175px;
background-color: red;
}
#bottomcontent {
background-color:#eee;
text-align:center;
}
4 columns - variable width
4 columns - variable width
#topcontent {
background-color: yellow;
}
#leftcontent {
position: absolute;
left:1%;
width:20%;
top:50px;
background:#fff;
}
#centerleft {
position: absolute;
left:22%;
width:28%;
top:50px;
background:#fff;
}
4 columns - variable width
#centerright {
position: absolute;
left:51%;
width:28%;
top:50px;
background:#fff;
}
#rightcontent {
position: absolute;
left:80%;
width:19%;
top:50px;
background:#fff;
}