            case VerticalAlign.JUSTIFY: 
                return targetHeight;
            case VerticalAlign.CONTENT_JUSTIFY: 
-               return Math.max(elt.getPreferredBoundsHeight(), contentHeight);
+               return Math.max(elt.getPreferredBoundsHeight(), containerHeight);
        }
        return elt.getPreferredBoundsHeight();
     }

    }
    
    //  - virtual layout only - 
    private function calculateElementHeight(elt:ILayoutElement, targetHeight:Number, contentHeight:Number):Number
    {
       // If percentHeight is specified then the element's height is the percentage
       // of targetHeight clipped to min/maxHeight and to (upper limit) targetHeight.

        {
            var elt:ILayoutElement = layoutTarget.getLayoutElementAt(index);
            var w:Number = (isNaN(fixedColumnWidth)) ? elt.getPreferredBoundsWidth() : fixedColumnWidth;
            var h:Number = calculateElementHeight(elt, targetHeight, containerHeight);
            var y:Number = calculateElementY(elt, h, containerHeight);
            elt.setLayoutBoundsPosition(x, y);
            elt.setLayoutBoundsSize(w, h);            
