I have a set of divs and one image that I am trying to format to look like this:

At the first attempt, this is quite simple, I float the image and the name on the left, float the suffix on the right and it is clear: on the right; title.
HTML:
<div class='wrapper'> <img src='http://placehold.it/200x150?text=var+w%26h' class='image' /> <div class='name'></div> <div class='suffix'></div> <div class='title'></div> <div class='notes'></div> </div>
CSS
.wrapper { border:1px solid black; overflow:auto; padding:5px; width:500px; } .image{ float:left; margin:0 5px 5px 0; } .name{ border:1px solid red; float:left; } .suffix{ border:1px solid blue; float:right; } .title{ border:1px solid green; clear:right; }
However, all my fields are variable and can be of different sizes, several lines, etc. Thus, clearing the right side of the header can clear one (or even zero) line suffix, but the name can be 3 lines:

I can use the inner shell with overflow:hidden; or overflow:auto; on everything except the image, and then clear:both; the title, but then I lose the notes wrapping the image.

How can I maintain the correct flow in all parts?
Fiddle: http://jsfiddle.net/trex005/j6v1kmdp/
source share