/* Copyright 2004 - 2007 - TJK Design ~ divaHTML */ /* because "min-width" and "max-width" are not supported by IE, I use Conditional Comments with CSS expression */ #outer_wrapper { min-width:740px; max-width:1400px; /* this is to "minimize" an IE bug related to background painting, but because it creates a gap below the footer, the same declaration is also added to #footer */ width:100%; } #wrapper { /* used for faux-column technique */ } #header { /* this is to "give layout" to the element and fix some peek-a-boo bug in IE (v6 sp2) */ width:100%; } #container { float:left; width:100%; /* IE doubles the margins on floats, this takes care of the problem */ display:inline; margin-left:-200px; } #left { float:left; width:150px; display:inline; /* IE doubles the margins on floats, this takes care of the problem */ margin-left:200px; } #main { /* the width from #left (150px) + the negative margin from #container (200px) */ margin-left:350px; } /* good to know: if #sidebar is to be shorter than #main, then there is no need for this rule */ #sidebar {/* this is to keep the content of #sidebar to the right of #main even if the content of "main is shorter */ padding-left:100%; /* this is to "bring back" the #sidebar that has been moved out of the viewport because of the padding value */ margin-left:-200px; } #sidebar p { /* this is to make sure IE (v6 sp2) *displays* this element (same problem as #header, but using a different fix) */ position:relative; } #footer { /* see #outer_wrapper */ width:100%; /* this is to clear #container */ clear:both; } /* this is the class that is applied to 2 structural hacks in the markup. The first "meaningless" element is used to clear #left in NN6 and the last one is used to clear #container in NN4 */ .clearing {height:0;clear:both;overflow:hidden;}