Вы не включили css для вашего контейнера div, но всякий раз, когда он содержит плавающие элементы, вы должны скрывать переполнение следующим образом:
#container {
overflow: hidden;
width: 100%; /* for good measure */
}
Когда вы устанавливаете средний div, вы устанавливаете поля, которые охватывают весь контейнер, поэтому все остальные элементы располагаются в строке ниже. Обратите внимание, по крайней мере, для большинства современных браузеров, далее . Если вы измените порядок элементов, например:
<div id="container">
<div id="left-element">
<img src="images/left_element.png" alt="left"/>
</div>
<div id="right-element">
I am the text in right element
</div>
<div id="middle-element">
I am the text inside the middle element
</div>
</div>
Вы должны найти, что это работает. Лучший метод , так как я не совсем уверен, будет ли это предполагаемым работать, будет использовать позиционирование css. Примените следующие CSS:
#container {
overflow: hidden;
width: 100%;
min-height: 36px; /* Remember absolute positioning is outside the page flow! */
position: relative;
}
#left-element {
position: absolute;
left: 9px;
top: 3px;
width: 13px;
}
#middle-element {
margin: 0 auto;
text-align: center;
width: 300px;
}
#right-element {
position: absolute;
right: 0px;
top: 0px;
width: 100px;
}