2015-09-05 4 views
2

Как разместить внутренний div в нижней части внешнего div без использования абсолютной позиции в CSS? Для ниже фрагмента кода только последний div должен быть выровнен снизу (другие три должны быть сверху, как есть)?Как разместить внутренний div в нижней части внешнего div без использования абсолютного положения в CSS

<div> 
<div id="wrapper" class="parent" style="height:600px; border: 1px solid red;"> 
<div style="border: 1px solid blue;">Fist</div> 
<div style="border: 1px solid blue;">Second</div> 
<div style="border: 1px solid blue;">Third</div> 
<div style="border: 1px solid blue;" class="child">Needs to be at bottom</div> 
</div> 
</div> 

ответ

2

Попробуйте это решение:

<div> 
<div id="wrapper" class="parent" style="height:600px; border: 1px solid red; position:relative;"> 
<div style="border: 1px solid blue;">Fist</div> 
<div style="border: 1px solid blue;">Second</div> 
<div style="border: 1px solid blue;">Third</div> 
<div style="border: 1px solid blue; position:absolute; bottom:0;" class="child">Needs to be at bottom</div> 
</div> 
</div> 

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

в действии с этой скрипкой: http://jsfiddle.net/fdxj1oue/

+0

См. OP at _ "без использования абсолютного положения в CSS?" _ – guest271314

+0

@ guest271314: То, что вы сделали, - это абсолютное позиционирование - в моем коде нет. «Абсолютное» позиционирование обычно не означает «абсолютный» режим, но использует «абсолютные» значения, которые могут меняться от браузера к браузеру или при изменении содержимого div. – Juergen

+0

Должно быть, неверно истолковал вопрос, здесь. _ "без использования абсолютной позиции в CSS?" _. Не _literal_ 'позиция: absolute'? – guest271314

2

Вы можете использовать Flex-поле, он имеет хорошую поддержку в настоящее время во всех основных браузерах. http://caniuse.com/#search=Flex

Решение:

Внешний контейнер

#wrapper { 
Display: flex; 
Flex-direction: column; 
} 

Внутренний контейнер

.child { 
margin-top: auto; 
} 

это лучше использовать последний дочерний селектор псевдо всегда выбрать нижнюю DIV. проверьте это fiddle.

+0

пробовал ... не работает .. –

+0

Это работает в скрипке –

Смежные вопросы