http://codepen.io/anon/pen/lpDKs
Avoid using tables to align content as it is not recommended.
Instead, utilize floats without absolute positioning for layout.
The repeating background is set on the main container with a minimum height of 100%.
Keep in mind that there is still room for improvement. This serves as a basic concept.
html,body {
height: 100%;
margin: 0;
padding: 0;
}
body {
background-color:#597d4f;
}
.container {
position: relative;
width: 850px;
margin:0 auto;
overflow: auto;
min-height: 100%;
background-color:#597d4f;
background-image:url('http://agdequine.com/images/banner_top_02.jpg');
background-repeat:repeat-y;
background-origin:border-box;
}
.topframe {
position: relative;
height: 323px;
background-color:#597d4f;
background-image:url('http://agdequine.com/images/banner_top_01.jpg');
background-repeat:no-repeat;
background-origin:border-box;
}
.leftframe {
width:196px;
float: left;
}
.mainframe {
width: 654px;
float: left;
background-color:#faf4d1;
padding-bottom: 80px;
}
.title_main {
font-size: 46px;
font-variant:small-caps;
font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
color:#6f4e4a;
font-style: italic;
padding-left: 30px;
padding-top: 30px;
}
.nav_container {
width: 196px;
height: 190px;
position: relative;
margin-top: 5px;
background: rgba(167,192,74,0.4);
}
.footer {
position: relative;
width: 850px;
margin: -80px auto 0 auto;
clear: both;
font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
font-size: 12px;
color: #4e3d41;
}
.footer p {
text-align: right;
}
ul.nav {
list-style-type: none;
}
a.menuitem {
text-decoration: none;
font-variant:small-caps;
font-size: 24px;
}
a.menuitem:link {color:#6f4e4a;}
a.menuitem:visited {color:#6f4e4a;}
a.menuitem:hover {text-decoration: underline;
}
a.main:link {color:#6f4e4a;}
a.main:visited {color:#4e3d41;}
a.main:hover {color:#FF0000;}
.image-cont {
width:200px;
position:relative;
}
.img-left {
float: left;
margin: 10px 10px 10px 0;
}
.img-right {
float: right;
margin: 10px 0 10px 10px;
}
p.main {
font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
font-size: 14px;
color:#4e3d41;
}
p.largemain {
font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
font-size: 16px;
color:#4e3d41;
}
p.caption {
font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
font-size: 12px;
color:#4e3d41;
}
.emphasize {
color:#FF0000;
font-weight: bold;
}