Я бы просто поместил оба элемента влево. Это приведет к тому, что оба элемента будут расположены рядом друг с другом.
[HTML]
(Img слева)
<div class="innercontent">
<img class='floatLeft' />
<p class='floatLeft'>Lorem ipsum dolor sit amet....</p>
<div class='cleaner'></div>
</div>
(изображение справа от текста)
<div class="innercontent">
<p class='floatLeft'>Lorem ipsum dolor sit amet....</p>
<img class='floatLeft' />
<div class='cleaner'></div>
</div>
[CSS]
.cleaner{clear: left; line-height: 0; height: 0;}
.floatLeft{float: left;}
Очиститель используется для возврата следующего элемента назад после всплывающего элемента. Я всегда ставлю это после того, как плаваю элементы. Обычно это нормально работает без него, но я склонен плавать элементы с другими "не всплывающими" элементами внутри.
Также в CSS вам, возможно, придется указывать img непосредственно для float. Я не уверен, точный синтаксис, но что-то вроде ...
.floatLeft>img{float: left;}