Как прижать картинку к низу блока css
Перейти к содержимому

Как прижать картинку к низу блока css

  • автор:

Прижать блок в низу CSS — как прижать блок к низу

Прижать блок к низу CSS

В чем проблема: футер (нижняя часть сайта) по умолчанию становится сразу за основным контентом и не прижимается к низу страницы.

Как должно выглядеть после решения проблемы: прижать футер к низу страницы, если контента не хватает.

На изображении ниже слева отображена страница на которой нижняя часть идет сразу за контентом (проблема), а справа страница с решенной проблемой, где нижний блок всегда прижат к низу.

Прижатый и неприжатый футер к низу

На данной странице Вы можете посмотреть страницу, которая создана именно таким образом:

Посмотреть примерСкачать

Если Вы хотите научиться создавать продающие страницы с нуля, а не только подписные, тогда рекомендую свой мини-курс: «Лендинг за 60 минут».

Как прижать блок к низу?

1 HTML структура

Рассмотрим всё на простой структуре из 3-х блоков:

1 2 3 4 5 6 7 8 9 10 11
div id="container"> div id="header"> /div> div id="body"> /div> div id="footer"> /div> /div>

Один общий блок, в котором находятся три видимых блока.

2 Стили CSS

CSS Часть

Здесь также всё довольно просто:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
html, body { height:100%; } #container { min-height:100%; position:relative; } /*Стили для блока с шапкой*/ #header { background:#222; padding:10px; } /*Стили для центральной части*/ #body { padding-bottom:70px; /* Высота блока "footer" */ } /*Стили для нижней части*/ #footer { position:absolute; bottom:0; width:100%; height:70px; /* Высота блока "footer" */ background:#66ccff; }

Здесь хочу отметить строки с комментариями, которые находятся за свойствами. Это внутренний отступ снизу у центральной части и это же число у высоты нижней части (футера). В этом и есть весь секрет.

Вывод

Для сайтов, которые рассчитаны для одного экрана, это простой способ решить проблему и прижать блок к низу на чистом CSS.

Если не получается прижать блок к низу: Вы можете обратиться ко мне за помощью, предварительно записавшись на SKYPE консультацию!

Как прижать элемент к низу или верху родительского элемента

Заметка: активирована адаптивная версия сайта, которая автоматически подстраивается под небольшой размер Вашего браузера и скрывает некоторые детали сайта для удобства чтения. Приятного просмотра!

Здравствуйте! В сегодняшней короткой и сугубо практической статье я расскажу, как прижать, к примеру, div к низу другого div. Всё дело в том, что по одноименному запросу в своё время я не смог найти нужных мне ответов, поэтому сейчас я расскажу вам обо всех возможных способах сделать это.

Допустим, у нас есть 2 элемента на странице, неважно какие именно, для примера возьмём 2 div. Один из них будет вложен в другой, причём высота родителя будет больше высоты ребёнка:

 #parent < background:black; height:300px; >#child 
Текст дочернего элемента

Для красоты и наглядности я сделал дочерний элемент квадратным:

Красный квадрат

Способ №1. Абсолютное позиционирование

Используем абсолютное позиционирование и при этом не забываем, что родительский элемент обязательно должен иметь позицию relative:

  
Текст дочернего элемента

абсолютное позиционирование

Это значит что в таком случае:

 #parent < background:black; height:300px; >#child,#child2,#child3< display:inline-block; /* Сделали все div в одну строку */ height:100px; width:100px; > #child < background:red; >#child2 < background:yellow; >#child3 
Текст дочернего элемента 1
Текст дочернего элемента 2
Текст дочернего элемента 3

div в одну строку

После проделанного выше способа получиться следующее:

элементы друг на друге

Все элементы легли друг на друга, так как они не понимают, что существуют другие элементы, кроме них самих. В результате последний div (зелёный) оказался выше всех, в то время как первый (красный) ниже всех.

Конечно, кто-то может поспорить и сказать, что мы можем выставить у каждого div разную велечину left, например так:

  
Текст дочернего элемента 1
Текст дочернего элемента 2
Текст дочернего элемента 3

CSS свойство left

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

Но это ерунда, куда важнее универсальность и рациональность. Поясняю, пользуясь способом №1 мы должны:

Способ №2. Вертикальное выравнивание

Этот способ подойдёт в том случае, если, к примеру, у родителя не задана высота, в то время как все дочерние элементы имеют разные высоты:

 #parent < background:black; >#child,#child2,#child3 < display:inline-block; >#child < background:red; height:300px; width:100px; >#child2 < background:yellow; height:100px; width:100px; >#child3 
Текст дочернего элемента 1
Текст дочернего элемента 2
Текст дочернего элемента 3

Вертикальное выравнивание

Всё что нужно, чтобы это исправить – дописать всего лишь одну строчку:

 #parent < background:black; >#child,#child2,#child3< vertical-align:bottom; /* вот она */ display:inline-block; > #child < background:red; height:300px; width:100px; >#child2 < background:yellow; height:100px; width:100px; >#child3 
Текст дочернего элемента 1
Текст дочернего элемента 2
Текст дочернего элемента 3

vertical-align

1) Для того, чтобы применить вертикальное выравнивание (vertical-align), элементы ни в коем случае не должны иметь свойство float.
2) В отличие от предыдущего способа, нам без разницы, какую позицию (relative, absolute и тд.) будет иметь родитель, поэтому её можно просто не писать, по умолчанию она static.

Как прижать элементы к верху родительского

Обратная ситуация. Допустим нам нужно прижать div к верху родительского элемента.

Такая необходимость может появиться, например, если у вас внутри дочерних элементов высота регулируется не в CSS, а объёмом текста:

 #parent < background:black; >#child,#child2,#child3 < width:100px; display:inline-block; >#child < background:red; >#child2 < background:yellow; >#child3 
Много, много текста, много текста, много текста, много текста, много текста, много текста, много текста, много текста, много текста. Текст дочернего элемента 1
Мало текста, мало текста. Текст дочернего элемента 2
Средне текста, средне текста, средне текста, средне текста, средне текста. Текст дочернего элемента 3

top

Чтобы это исправить, и прижать все элементы к верху родительского, нам необходимо задать свойство vertical-align в значение top:

 #parent < background:black; >#child,#child2,#child3< vertical-align:top; /* top */ width:100px; display:inline-block; > #child < background:red; >#child2 < background:yellow; >#child3 
Много, много текста, много текста, много текста, много текста, много текста, много текста, много текста, много текста, много текста. Текст дочернего элемента 1
Мало текста, мало текста. Текст дочернего элемента 2
Средне текста, средне текста, средне текста, средне текста, средне текста. Текст дочернего элемента 3

результат

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

Как прижать картинку к низу блока css

Да-да, заезженный вопрос)

"header">  "page"> "./img/pic.png" style="color:#0000FF">"pic-bottom">  "footer"> 

#page < position: relative; >#page .pic-bottom < position: absolute; bottom: 0; >#footer

В чем задача — прижать пикчу к низу div, проблема в том, она прижимается к самому низу документа, заезжая за футер.

Я думаю, что это из за того, что я не указал высоту #page. Как то можно без указания высоты, прижать картинку к низу блока, не заезжая за футер? Или мне везде указать ширину в процентах?

Форумчанин
Регистрация: 19.01.2015
Сообщений: 158
Название темы не соответствует приведенному коду

>>> В чем задача — прижать пикчу к низу div
Тут в коде нету div. Зачем-то секции используются. Семантика?
Вы, в принципе правильно задали стили. Так работает:

  "windows-1251"> tmp #header #page < position:relative; background:orange; >#page .picBottom < position:absolute; bottom:0; >#footer "header">111111111 "page">           "http://programmersforum.ru/image.php?u=311137&dateline=1421676338" style="color:#0000FF">"picBottom">  "footer">333333333333  

Последний раз редактировалось SQLPowerUser; 13.07.2015 в 18:51 .

SQLPowerUser
Посмотреть профиль
Найти ещё сообщения от SQLPowerUser

Как прижать изображение к низу блока div ? — Вопросы по CSS

Сегодня важный день для проекта Joomla! Мы отмечаем два года напряженной работы наших добровольцев, решивших выпускать новую основную версию каждые два года. После большого количества обсуждений, спринтов по написанию кода и устранения ошибок этот день наконец настал и мы с гордостью объявляем о выпуске новой мажорной ( major ) версии Joomla 5.0, наряду с Joomla 4.4.

В Joomla Extensions Directory появился тег совместимости с Joomla 5.

Joomla-разработчики, проверившие совместимость своих расширений с Joomla 5 могут поставить галочку ��

JoomlaDay Spain, Madrid.

В Мадриде, Испания 5-6 октября 2023 года проходит Joomla Day — конференция, посвящённая как новичкам, так и профессионалам, работающим с Joomla.

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *