It's a combination of two things. First, if you want to have divs take up 100% height, then you'll need to set the body and html to that as well.
html, body {
height: 100%;
}
Second, you have set the sidebar as position: fixed
. This is just like having position: absolute
set on it. If you want the sidebar to remain visible at all times, you can do a margin-left: 22%;
(or whatever the width of the sidebar is) on #content
. If you want the sidebar to flow with the rest of the page, just remove the fixed position.