2012-06-30 3 views
5

Я вложенными div с, причем большинство будучи float:left; display:block;, как сделать:Как увеличить высоту div зависит от содержимого внутри?

<div class="container" style="display:block;"> 
    <div style="float:left; display:block; height:100px;"> 
    <div style="float:left; display:block; height:100px;"> 
</div> 

Я хочу div контейнер, чтобы получить больше, не устанавливая высоту. На данный момент это плоская линия.
Как настроить внутренний div s, чтобы контейнер имел высоту?

TL; DR: В настоящее время можно увидеть 2 внутри div «ы хорошо, но контейнер не является плоской div (не высота).
Как придать ему высоту?

ответ

2

Добавить overflow:hidden в DIV.

+0

cheers dude отлично работает! – Emmett

+0

дубликат http://stackoverflow.com/questions/804926/make-outer-div-be-automaticly-the-same-height-as-its-floating-content –

+0

Вы также можете поместить контейнер влево или добавить очищенный элемент в конце (хотя я рекомендую использовать решение clearfix) –

9

У вас есть два варианта:

<div class="container" style="overflow:hidden"> 
    <div style="float:left; height:100px;"> 
    <div style="float:left; height:100px;"> 
</div> 

или

<div class="container"> 
    <div style="float:left; height:100px;"> 
    <div style="float:left; height:100px;"> 
    <div style="clear:left"> 
</div> 

Обратите внимание, что overflow:hidden элементы обтекают вокруг плавающих внутренних элементов. Кроме того, вы можете использовать элемент для очистки float, который также заставит окружающий элемент обернуть его содержимое.

Еще один совет: вам не нужно указывать, что divs - display:block. В HTML есть в основном 2 типа элементов, block и inline. По умолчанию делители block.

+0

Обратите внимание, что значение для переполнения атрибутом может быть любое значение, которое применимо (автоматическое, скрытое, прокручиваемое, видимое). –

+1

Также любой плавающий элемент становится блоком. – bfavaretto

+0

Переполнение: скрыто, работает для меня .. Большое спасибо –

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