![b8c2888615d0450d853980eeee4be041.gif](//habrastorage.org/files/b8c/288/861/b8c2888615d0450d853980eeee4be041.gif)
1. Красный имеет clear:left и изменять его мы не можем. Наведя на него в файрбаге - он растянут на всю ширину (в принципе так и надо, но свойства width=100% - нет). Меняется динамически по высоте в зависимости от контента.
2. Синие равные по ширине, можно сделать фиксированной высотой.
3. Зеленый нужно, чтобы был на всю ширину Красного (сколько бы тот ни принял ее) + растягивался по высоте (т.е. его высоту фиксировать нельзя, в нем как раз и будет тот динамический контент, который растягивал Красный до этого).
Спасибо всем за помощь.