#text_container,
#image_container {
display: inline;
}
должен это сделать. Попробуйте это:
<html>
<head>
<style>
#top {
float: left;
display: inline;
border: 1px solid green;
}
#bottom {
float: right;
display: inline;
border: 1px solid red;
}
</style>
</head>
<body>
<div id="top">
I'm the top div
</div>
<div id="bottom">
I'm the bottom div
</div>
</html>
Но если содержание вашего div'а больше, чем ширина, которую вы им оставили (что, вероятно, так и есть), тогда вы будете бороться. Вы должны действительно дать ему ширину, но вышеописанное может работать для вас, в зависимости от того, как вы хотите его использовать.