Я хочу, чтобы внешний вид div
был черным, чтобы обернуть его div
плавающим внутри. Я не хочу использовать style='height: 200px
в div
с outerdiv
идентификатором, так как я хочу, чтобы он автоматически был высотой своего содержимого (например, плавающий div
s).
<div id='outerdiv' style='border: 1px solid black;background-color: black;'>
<div style='width=300px;border: red 1px dashed;float: left;'>
<p>xxxxxxxxxxxxxxxxxxxxxxxxxxxxx</p>
</div>
<div style='width=300px;border: red 1px dashed;float: right;'>
<p>zzzzzzzzzzzzzzzzzzzzzzzzzzzzz</p>
</div>
Как этого добиться?
HTML/CSS
никогда не был хорошей технологией пользовательского интерфейса, поэтому нелогичные вещи в нем довольно распространены :)float
решение. Очень хорошо работает с остальными, особенно в паре с Twitter Bootstrap.Во-первых, я настоятельно рекомендую вам делать стили CSS во внешнем файле CSS, а не встраивать их. Его намного проще поддерживать, и его можно использовать повторно с помощью классов.
Отработав ответ Алекса (и clearfix Гаррета) о «добавлении элемента в конце с помощью clear: both», вы можете сделать это так:
Это работает (но, как видите, встроенный CSS не такой красивый).
источник
Вы можете попробовать самозакрывающиеся поплавки, как описано на http://www.sitepoint.com/simple-clearing-of-floats/
Так что, возможно, попробуйте либо
overflow: auto
(обычно работает), либоoverflow: hidden
, как сказал Алексей.источник
Я знаю, что некоторые люди меня возненавидят, но я нашел
display:table-cell
способ помочь в этом случае.Это действительно чище.
источник
Прежде всего, вы не используете
width=300px
эту настройку атрибута для тега, а не CSS, используйтеwidth: 300px;
вместо этого.Я бы посоветовал применить эту
clearfix
технику на#outerdiv
. Clearfix - это общее решение для очистки 2 плавающих div, поэтому родительский div будет расширяться для размещения 2 плавающих div.Вот пример вашей ситуации и того, что Clearfix делает для ее решения.
источник
Используйте jQuery:
Установите Parent Height = Child offsetHeight.
источник
Использовать
clear: both;
Я потратил больше недели, пытаясь понять это!
источник