Ваш контейнер div #right_b
сворачивается, потому что его дочерние элементы плавают. Вы можете исправить это с помощью техники «Clear-Fix». Возможно, вы захотите ознакомиться с некоторыми решениями в следующем сообщении о переполнении стека:
Одним из популярных решений является добавление overflow: hidden
в div вашего контейнера. : #right_b
:
#right_b {
background:transparent url('img/right.png');
background-position: right top;
background-repeat: repeat-y;
overflow: hidden;
}
Другой распространенный способ - добавить
перед закрытием контейнера div:
<div id="first">
<div id="left_b">
<div id="right_b">
<div id="text">text 1</div>
<div id="text2">text 2</div>
<div style="clear: both;"> </div>
</div>
</div>
</div>
Думаю, вы должны указать #right_b
также минимальную высоту:
#right_b{
background:transparent url('img/right.png');
background-position: right top;
background-repeat: repeat-y;
min-height: 30px;
}
Плавающие элементы исключены из обычного потока документов , поэтому, если элемент не содержит других «нормальных» элементов, этот элемент имеет высоту 0
(так как у него нет содержимого).