The content position is relative. It has a left padding that takes into account the width of the sidebar. Width is in "em" units here too. Changes in text size will cause the sidebar to adjust in harmony with the content left padding.

Content grows to its required size.

Here is the CSS used in this page:

body{
  font-family: verdana, geneva, tahoma, arial, sans-serif;
  font-size: 76%;
  color:#000;
  padding: 0px 0px 0px 0px; 
  margin: 0px 0px 0px 0px; 
  background:#fff;
}

#header {
  width: 100%;
  height: 73px;
  font-size: 1.0em;
  padding: 0px 0px 0px 0px;
  margin: 0px 0px 0px 0px;
  /* left or right borders force a bottom scroll bar on Mozilla */
  border-bottom: #000 1px solid; 
  overflow: hidden;
  background:#fff;
}

#sidebar {
  font-size: 1.0em;
  position: absolute;
  top: 78px; /* ±1 difference between Mozilla 1.6 and IE 6 */
  left: 8px;
  width: 14em; 
  padding: 0px 0px 0px 0px;
  margin: 0px 0px 0px 0px;
  border-top: #000 1px solid; 
  border-right: #000 1px solid; 
  border-bottom: #000 1px solid; 
  border-left: #000 1px solid; 
  overflow: hidden;
  background:#fff;
}

#content{
  position: relative;
  font-size: 1.0em;
  border-top: #000 1px solid; 
  border-right: #000 1px solid; 
  border-bottom: #000 1px solid; 
  border-left: #000 1px solid; 
  margin: 10px 10px 0px 12px;
  padding: 0px 0em 12px 15em;
  background:#fff
}
#footer {
  position: relative;
  font-size: 1.0em;
  border-top: #000 1px solid; 
  border-right: #000 1px solid; 
  border-bottom: #000 1px solid; 
  border-left: #000 1px solid; 
  margin: 10px 10px 0px 12px;
  padding: 0px 0em 12px 15em;
  background:#fff
}

Verify with the CSS validator.