<?xml version="1.0" encoding="windows-1251"?>
<rss version="2.0">
   <channel>
      <title>Trifler Blog</title>
      <link>http://trifler.ru/blog/</link>
      <description>Lasto Blogging Engine</description>
      <language>ru</language>
      <copyright>gordi</copyright>
      <managingEditor>serg_gordi@mail.ru</managingEditor>
      <webMaster>serg_gordi@mail.ru</webMaster>
      <image>
         <title>Trifler Blog</title>
         <url>http://trifler.ru/blog/i/lastoblog.png</url>
         <link>http://trifler.ru/blog/</link>
      </image>

      <item>
         <title>Отдай body все и немного больше…</title>
         <link>http://trifler.ru/blog/post_1237037767.html</link>
         <description>&lt;p&gt;Не искусства ради или спортивного интереса…&lt;/p&gt;

&lt;p&gt;Пусть не всегда, но цель оправдывает средства, применяемые для ее достижения.&lt;/p&gt; 

&lt;p&gt;Стоит ли говорить, что &lt;em&gt;body&lt;/em&gt; практически никогда не выступает в качестве 

полноценного контейнера и достаточно редко используется в разметке на полную катушку.&lt;/p&gt; 

&lt;p&gt;Обойдемся без риторических вопросов, а почему собственно…&lt;/p&gt;

&lt;p&gt;Давайте, просто сделаем это.&lt;/p&gt;

&lt;p&gt;Итак.&lt;/p&gt;

&lt;pre class="pre"&gt;

&amp;lt;body&amp;gt;

  &amp;lt;div id="header"&amp;gt;Header&amp;lt;/div&amp;gt;

  &amp;lt;div id="middle"&amp;gt;

    &amp;lt;div class="content"&amp;gt;Content&amp;lt;/div&amp;gt;

    &amp;lt;div class="left"&amp;gt;Left&amp;lt;/div&amp;gt;

    &amp;lt;div class="right"&amp;gt;Right&amp;lt;/div&amp;gt;

  &amp;lt;/div&amp;gt;

  &amp;lt;div id="footer"&amp;gt;Footer&amp;lt;/div&amp;gt;

&amp;lt;/body&amp;gt;&lt;/pre&gt;

&lt;p&gt;Классическая, хрестоматийная разметка web-страницы в моем понимании, ничего лишнего. Кто-то может думать иначе, но тогда ему и путь-дорога на другие ресурсы, где популярно расскажут и возможно даже покажут, почему так делать нельзя.&lt;/p&gt;

&lt;p&gt;Что нам до них, попутного ветра дорогие товарищи :)&lt;/p&gt;

&lt;p&gt;Посмотрим стили:&lt;/p&gt;

&lt;pre class="pre"&gt;

* {margin:0;padding:0;}

html,body {height:100%;}

body {

  background-color:#eee;

  margin:0 auto;

  min-width:910px;

  max-width:960px;

}

*html body {

  width:expression(

  document.documentElement.clientWidth &lt; 910 ? '910px':

  (document.documentElement.clientWidth &gt; 960 ? '960px':'auto'));

  zoom:1;

}

*html #middle {overflow-y:visible;height:100%;}

#middle,.content,.left,.right {overflow:hidden;}

#middle {

   border:#00f solid;border-width:0 1px;

   &lt;span style="color:#080;"&gt;margin-top:-202px;&lt;/span&gt; /* height header+footer */

   padding:0 200px;

   min-height:100%;

}

.content,.left,.right {

   float:left;

   &lt;span style="color:#00f;"&gt;margin-top:202px;&lt;/span&gt; /* height header+footer */

   margin-bottom:-32767px;

   padding-bottom:32767px;

}

.content {background-color:#fff;margin-right:-100%;width:100%;}

.left {background:#ee9;margin-left:-200px;width:200px;}

.right {

   background:#9dd;

   float:right;

   margin-right:-200px;

   width:200px;

}

*html .right {margin-right:-100px;}

#header {

   background-color:#cce;

   border-top:#00f 1px solid;

   height:100px;

}

#footer {

   background-color:#e9e;

   border:#00f solid;

   border-width:0 1px 1px;

   clear:both;

   height:100px;

}&lt;/pre&gt; 

&lt;p&gt;На что следует обратить внимание.&lt;/p&gt;

&lt;p&gt;Сто процентная высота страницы с включением &lt;em&gt;header&lt;/em&gt; и &lt;em&gt;footer&lt;/em&gt;, 

где &lt;em&gt;footer&lt;/em&gt; всегда расположен у нижней границы окна браузера, при минимуме 

информации в любой из колонок.&lt;/p&gt;

&lt;p&gt;Реализовано это следующим образом.&lt;/p&gt;

&lt;p&gt;Для контейнера &lt;em&gt;middle&lt;/em&gt; задается отрицательный верхний отступ в сумме равный высоте &lt;em&gt;header&lt;/em&gt; и &lt;/em&gt;footer&lt;/em&gt;, выделено &lt;em&gt;зеленым&lt;/em&gt;. Тем самым мы поднимаем страницу вверх.&lt;/p&gt; 

&lt;p&gt;Далее для того, что освободить место для улетевшего в облака :) &lt;em&gt;header&lt;/em&gt;-а и поставить его на отведенное ему место, колонкам центральной части назначается тот же верхний отступ, но уже с положительным значением, выделено, &lt;em&gt;синим&lt;/em&gt; цветом.&lt;/p&gt;

&lt;p&gt;Если есть необходимость в горизонтальных &lt;em&gt;border&lt;/em&gt;-ах, отделяющих друг от друга 

&lt;em&gt;header, middle&lt;/em&gt; и &lt;em&gt;footer&lt;/em&gt;, а их появление приведет к появлению минимальной 

вертикальной прокрутки, нужно просто просуммировать их количество с их толщиной и добавить полученный результат к отступам речь, о которых шла в предыдущем абзаце.&lt;/p&gt;

&lt;p&gt;Вот собственно и все.&lt;/p&gt;

&lt;p&gt;Сегодня исключение из правил, &lt;a href="float.html"&gt;пример&lt;/a&gt; всего один, но сделать макеты 

с различным расположением колонок навигации относительно области контента, очень просто, 

достаточно посмотреть примеры (вариант № 1) к предыдущему 

&lt;a href="http://trifler.ru/blog/post_1236947776.html"&gt;посту&lt;/a&gt;.&lt;/p&gt;&lt;!-- RSS_link_to_post start --&gt;



&lt;br&gt;

&lt;div style="margin-left:10px;color:#575;font-weight:bold;"&gt;&lt;a href="http://trifler.ru/blog/post_1237037767.html"&gt;Оставить комментарий&lt;/a&gt;&lt;/div&gt; 

&lt;div style="margin-left:10px;color:#575;font-weight:bold;"&gt;&lt;a href="http://trifler.ru/blog/post_1237037767.html"&gt;All Comments&lt;/a&gt;&lt;/div&gt; 



&lt;!-- RSS_link_to_post end --&gt;&lt;!-- RSS_link_to_post start --&gt;



&lt;br&gt;

&lt;div style="margin-left:10px;color:#575;font-weight:bold;"&gt;&lt;a href="http://trifler.ru/blog/post_1237037767.html"&gt;Оставить комментарий&lt;/a&gt;&lt;/div&gt; 

&lt;div style="margin-left:10px;color:#575;font-weight:bold;"&gt;&lt;a href="http://trifler.ru/blog/post_1237037767.html"&gt;All Comments&lt;/a&gt;&lt;/div&gt; 



&lt;!-- RSS_link_to_post end --&gt;</description>
         <pubDate>Sat, 14 Mar 2009 19:36:07 GMT</pubDate>
      </item>
   </channel>
</rss>
