CSS Layout How to - Create layout with three columns, footer and header








Question

We would like to know how to create layout with three columns, footer and header.

Answer


<!DOCTYPE html>
<html>
<head>
<style type='text/css'>
* {<!-- w ww  .j a  v a  2s . c  om-->
  padding: 0;
  margin: 0;
}

html, body {
  background: #EEE;
  height: 100%;
}

#layout {
  margin: 0 auto;
  min-width: 600px;
  min-height: 100%;
  height: 100%;
}
/* invisible to IE6 */
#layout[id] {
  height: auto;
  overflow: hidden;
}

#content {
  padding: 0 200px
}

#header {
  height: 60px;
  background: #222;
}

#fix {
  height: 60px;
  clear: both;
}

.side {
  width: 200px;
  float: left;
  background: #292929;
  padding-bottom: 32000px;
  margin-bottom: -32000px;
}

.other {
  float: right;
}

#footer {
  height: 60px;
  background: #222;
  margin-top: -60px;
}
/* layer order, invisible to IE6 */
#footer[id] {
  z-index: 100;
  position: relative;
}

p {
  color: #DDD;
  padding: 20px;
}
</style>
</head>
<body>
  <div id="layout">
    <div id="header"></div>
    <div class="side">
      <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed
        do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
        enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi
        ut aliquip ex ea commodo consequat. Duis aute irure dolor in
        reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
        pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
        culpa qui officia deserunt mollit anim id est laborum.</p>
    </div>
    <div class="other side">
      <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed
        do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
        enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi
        ut aliquip ex ea commodo consequat. Duis aute irure dolor in
        reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
        pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
        culpa qui officia deserunt mollit anim id est laborum.</p>
    </div>
    <div id="content">
      <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed
        do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
        enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi
        ut aliquip ex ea commodo consequat. Duis aute irure dolor in
        reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
        pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
        culpa qui officia deserunt mollit anim id est laborum.</p>
      <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed
        do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
        enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi
        ut aliquip ex ea commodo consequat. Duis aute irure dolor in
        reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
        pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
        culpa qui officia deserunt mollit anim id est laborum.</p>
    </div>
    <div id="fix"></div>
  </div>
  <div id="footer"></div>
</body>
</html>

The code above is rendered as follows: