The simplest solution uses this markup:
<div class="complete">
<div class="orange"></div>
<div class="blue"></div>
</div>
Do you want to .completeand .blueare unlockable block elements that causes them to be used as much as possible the width, but you also need .orangeto swim, to be on the same line as the .blueand prevent .bluethe overlap it with the help of a hidden overflow.
.complete { overflow : hidden }
.orange { float : left ; width : 100px }
.blue { overflow : hidden }
, .
, . (, ), , CSS.