Идея: Eric Bednarz devnull.tagsoup.com
Ничего сверхестественного вы здесь не найдёте. ;) Просто сведение воедино двух вещей, описанных Эриком Беднарзом. Всё построено на position: absolute, игре с overflow и трюками для подсовывания нужных свойств нужным бродилкам.
Вполне возможно, что это не последняя версия кода. ОтЛаживание — по мере необходимости.
IE 6; Opera 6+; Mozilla 1.2; Mozilla Firebird 0.6.
Примечание. Если вы уже начали баловаться размерами окна и увидели горизонтальную полосу и всякие гадости, то знайте, что произошло это из-за использования тега <pre>. Ручками расставлять мне просто лень.
<?xml version="1.0" encoding="Windows-1251" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="ru"> <head> <title>CSS position: fixed. Without frames</title> <style type="text/css"> body { margin: 0; padding: <Bar 1 height> 0 0 0; background-color: #eee; color: #000; } div.content { margin: 0 0 0 <Bar 2 lenght>; } div.fixed1 { position: absolute; top: 0; left: 0; width: 100%; height: <Bar 1 height>; } div.fixed2 { position: absolute; top: <Bar 1 height>; left: 0; width: <Bar 2 lenght>; height: 150%; /* Обход бага в Opera6 */ } @media screen { body>div.fixed1, body>div.fixed2 { position: fixed; } } </style> <!--[if IE]> <style type="text/css"> body { overflow-y: hidden; } div.content { height: 100%; overflow: auto; } </style> <![endif]--> </head> <body> <div class="content"> [...content...] </div> <div class="fixed1"> [...fixed bar 1...] </div> <div class="fixed2"> [...fixed bar 2...] </div> </body> </html>