Мой вопрос дублирует этот вопрос, но для этого мне понадобится решение на чистом CSS, и я не могу использовать JS, чтобы исправить это. Итак, вот мои вопросы:
- Почему оболочка не расширяется, хотя она имеет абсолютное позиционирование и не должна ограничиваться своим родителем?
- Почему он точно подходит родителю?! Он вообще не должен расширяться, если есть проблема с плавающими детьми!
CSS:
#parent{
position: relative;
height: 200px;
width: 60px;
background: red;
}
#wrapper{
background: blue;
position: absolute;
top: 0;
left: 0;
}
#wrapper > div{
float: left;
width: 30px;
background: yellow;
margin: 1px;
}
HTML:
<div id='parent'>
<div id='wrapper'>
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
</div>
</div>
Вот демонстрация JSiddle.
position: absolute;
не имеет полной ширины), но это из-за другого побочного эффекта position: absolute; имеет, он вводит новый контекст форматирования блока, который будет содержать числа с плавающей запятой. (это означает, что если бы желтые элементы div не были плавающими, синий элемент div был бы уже) - person xec   schedule 27.06.2013