← на главную
Нашли ошибку? Сообщите, пожалуйста, о ней. Выделите ошибку и нажмите ctrl+enter.

Дневник — зеркало души

   читать: всё сразу по категориям поиск

   подписаться на рассылку: рассылка по email Twitter

13 января 2010 в 22:27
Прижимаем футер к низу с помощью CSS

Столкнулся сегодня с задачей, как прижать div к низу страницы.
   Стараюсь отходить от табличной верстки, поэтому использую только div для этих целей. И также везде применяю DOCTYPE, что бы сделать код максимально валидным.
   Перечитал очень много способов как решить эту задачу, но вот, на мой взгляд, этот оказался самым изящным и коротким. В коде есть комментарии, так что, думаю, разобраться реально.
   

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">
<
head>
    <
meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <
title>Прижимаем футер к низу с помощью csstitle>
    <
style type="text/css">
        
htmlbody{
            
padding:0;
            
margin:0;
            
height:100%; /* Задаём 100% высоту для html и body */
            
position:relative/* Если этого не задать, в Опере почему-то футер не прижимается сразу,
            прижимается только после ресайза окна, какой-то странный глюк*/
        
}
        
#container{
            
background:#CCC; /* Просто, чтобы было видно контейнер */
            
min-height:100%; /* Задаем минимальную высоту 100% */
            
_height:100%; /* Задаем высоту 100% в ИЕ6 с помощью хака */
        
}
        
#main{
            
padding-bottom:50px/* Задаём нижний отступ, равный высоте футера, можно задать и больше, 
                                    но главное, чтобы не было меньше, иначе футер налезет на контент*/    
        
}
        
#footer{
            
background:#36F;
            
height:50px/* высота футера */
            
margin-top:-50px/* отрицательный маргин, равный высоте футера */
            
position:relative/* Чтобы футер "всплыл" из под дива #container, если этого не сделать,
                                то ссылки в футере не кликабельны и нельзя выделить текст*/
        
}
    style>
head>
<
body>
     <
div id="container">
        <
div id="main">
         
Счастье – это когда есть всёот А до ФутерВот и появились первые упоминания о Футер в наших беседах.
                
Правда это было достигнуто не с использованием бубнанабора напильников и чтения мантра просто вы набрали слово «Футер»,
                
но все же результат оказался впечатляющимНа место Сократа я не претендуюно все-таки считаючто Футер – это и есть смысл жизни человека.
               
Впервые увидев Футерпонимаешьрай бывает не только утраченнымно и обретеннымФутер – это совершенный выбор
               
Часто владелец компании забываетчто для повышения лояльности работников важен набор не только материальных стимуловно и моральных
               
Подводя итоги в конце отчетного периодаустраивайте конкурсынапример«Лучший Футер»Это все создает внутренний PR.
               
Недавно в и-нете был анонсирован новый проектЛюди так красиво расписали свою идеюборьба с совкомжалобыпретензии и т.д
              
Захожу я на проект и вижу на их рекламном баннере Футер... Всечтобы ни происходило с вами в жизнипринимайтекак Футер
              
который вы даете сами себеФутер холодныйа душу греетВотнапримерхудожникиОни проводят месяцрисуя синий Футер,
              
поскольку именно эти картины знаменитые коллекционеры покупают в этом сезонеа следующий месяц проводятрисуя красный Футер
              
потому что вообще-то презирают синий цвет и любят красныйА вот «Ретуф» – это Футер наоборот.
              
© Генератор светских бесед
          
div>
     div>
    <
div id="footer">
    
© Прижимание футера к низу    
    
div>
body>
html>
?>


   

знания   |   38 комментариев    |   следить за комментариями
|
|
Запросы, по которым находят эту запись (3)
4aod3n 39oa70
yandex.ru;search;web;;

← Все эгоистыВыбор лыжных ботинков →
 
Комментарии:
Гость( 14 января 2010 в 17:52 )

   Баян же

автор ответил:

   Возможно и баян, но мне этот метод очень помог и он показался очень удобным.
   А если какие-то небоянистые методы?

kovsky( 1 февраля 2010 в 21:14 )

   В чем смысл отхода от табличной верстки?

Гость( 1 ноября 2010 в 13:26 )

   мне тоже этот метод помог. автору спасибо!

Гость( 16 мая 2011 в 18:56 )

   А я решил этот вопрос написав умный javascript код, который сам оперделяет, где футер должен быть.
   
   http://alexnetstudio.org.ua/view_date.php?date=2011-05

автор ответил:

   js по нескольким причинам плох:
   1. не у всех пользователей он поддерживается.
   2. js — это дополнительные килобайты траффика и дополнительные секунды загрузки страницы.
   
   Всё же лучше в вёрстке не использовать js

Гость( 22 мая 2011 в 12:11 )

   Смысл отхода от табличной верстки в том, что при создании сложных проектов(реальных а не 2-3 контейнера) вносить изменения в таблицах очень долго и сложно! Намного проще работать с дивами. Код получается читабельный и легко расширяемый.
   P.S. JS для прижатие дива — извращение!!! никогда больше так не делайте)))

автор ответил:

   +1 ))

Гость( 24 мая 2011 в 14:58 )

   44

Гость( 21 июля 2011 в 18:16 )

   Всё же лучше "каркас" создать при помощи таблицы. А потом добавить "дивы" бля разных блоков. Так быстрее.
   Или я не прав ?

Гость( 9 августа 2011 в 17:18 )

   Если хотите больше лишнего кода, то можно div в таблицы класть.

Гость( 19 августа 2011 в 00:27 )

   В чем сложность внесения в таблицы изменений? Может ими нельзя управлять из css файла? может для них стили другие используются нежели для блоков? Так как таблица более жесткий элемент, для каркаса подходит наиболее лучше, использование одной таблицы с вложеными блоками самый удачный вариант. И где тут лишний код? а 10 вложеных блоков один в другой это не лишний код? А вообще кто как хочет так и верстает, естественно несколько вложенных таблиц это извращение, но про это никто и не говорит.

Гость( 19 августа 2011 в 22:47 )

   Согласен с последним постом ! =)

Гость( 2 октября 2011 в 20:30 )

   Спасибо за статью.
   
   PS: Подсветка кода у вас сжирает края тегов

Гость( 7 октября 2011 в 08:19 )

   можно мез маржина
   position: relative;
   float: left;
   width: XYZpx;
   
   вначале маржином делал, потом посмотрел на сайт через фаербаг, и это было нехорошо) вот и всё)

Гость( 10 ноября 2011 в 15:03 )

   Час мучался, просто весь мозг себе вынес... всё получилось, но как так и не понял :)

Гость( 12 ноября 2011 в 22:43 )

   Спасибо! Работает! Кста, фаербаг ничего не возврозил. Советую обновить версию...

Гость( 27 ноября 2011 в 06:07 )

   интересно, и где он прижимается к низу? он итак будет под дивами...вроде подразумевается к низу body? или нет? просто тупо скопированный код пропишет футер под дивом, и никак не прижмет его к низу body...странно как-то...

Гость( 17 декабря 2011 в 01:00 )

   
   бесплатная аська для телефона
   http://icqmobilephones.net/ — аська для телефона

Гость( 31 декабря 2011 в 23:28 )

   http://besplatniysoftskachat0.info/2539-film-bolshie-zadnicy-i-siski-3-phat-ass-tits-3-skachat-novye-kinoserialy-i-multfilmy-bystro-i-na-maksimalnoy-skorosti-na.html — фильм Большие Задницы и Сиськи #3 / Phat Ass Tits 3 Скачать новые кино,сериалы и мультфильмы быстро и на максимальной скорости на
   Extra site submitter BestSofteG — Лучший софт рунета

Гость( 1 января 2012 в 22:13 )

   Прижался кверху(((

Гость( 12 января 2012 в 18:37 )

   у меня в гугле #container высотой как содержимое в нём а не 100%%

Гость( 31 января 2012 в 18:28 )

   Отличная статья, те кто пишут "баян" пусть убьют себя об стену, если кто-то где-то что-то увидел первым, то это не означает, что теперь об этом известно всему миру и нигде нельзя больше об этом говорить.
   
   Спасибо большое автору — метод очень помог

Гость( 5 марта 2012 в 13:41 )

   Спасибо за статью! Все четко, понятно и главное эффективно.

Гость( 9 марта 2012 в 21:55 )

   А в Опере не работает

Гость( 15 марта 2012 в 10:37 )

   в опере надо поправить параметр after. у меня получилось.

Гость( 18 октября 2012 в 10:54 )

   А что, тут комментарии без модерации публикуются?

Гость( 18 октября 2012 в 10:56 )

   А как сделать меню, как на сайте http://techsvet.com/, где сбоку лампочка у них?

Гость( 13 марта 2013 в 21:06 )

   Есть идиотский но очень легкий способ и он работает! Не по стандартам но все же!
   
   ......
   
   
   
   И футер всегда внизу, не проверял правда в старых браузерах, в новых все ок)

Гость( 17 марта 2013 в 05:36 )

   Уточните в названии что "к низу страницы". А вообще интересует как к низу окна или видимой области страницы.

Гость( 17 марта 2013 в 09:10 )

   html
   head
   /head
   body
   /body
   /html
   div class='footer'
   /div
   
   Прижимает блок к низу окна браузера.

Гость( 22 июля 2013 в 16:24 )

   Интересно однако, а вот как у меня привязать fotter к днищу :D http://sistemadmin.ru/

Гость( 29 ноября 2013 в 19:28 )

   когда я захожу в интернет и на какую-не будь то я однаруживаю что всё внизу экрана я даже не могу поднять в верх помогите . или всё таки надо новый ноутбук покупать !?

Гость( 27 июня 2014 в 00:33 )

   Этот код не будет работать без закрывающих тегов. Например,
   сейчас
   div>
   body>
   html>
   ?>
   а надо вот так
   
   
   
   Автору, спасибо за статью, но уважительно прошу исправить ошибки в коде.

 
Добавить комментарий:

Вы можете войти под своим именем или просто написать комментарий от имени Гость.

Сколько будет корень из двадцати пяти?

следить за комментариями к этой записи