         {
             row = _constraintRows[elementInfo.baselineIndex];
             baselineHolder = row.y;
+            
+            // If bottom doesn't exist, then the bottom should be restricted to the
+            // baseline row.
+            if (isNaN(bottom))
+                bottomHolder = row.y + row.height;
         }
         
         // available width

        ResourceManager.getInstance();
    
    // Arrays that keep track of children spanning
    // content size columns or rows or whether the elements don't
    // use columns or rows at all
    private var colSpanElements:Vector.<ElementConstraintInfo> = null;
    private var rowSpanElements:Vector.<ElementConstraintInfo> = null;
    private var otherElements:Vector.<ElementConstraintInfo> = null;
    
    private var constraintCache:Dictionary = new Dictionary(true);
    
    //--------------------------------------------------------------------------
    //

        layoutTarget.measuredWidth = Math.ceil(width);
        layoutTarget.measuredHeight = Math.ceil(height);
        
        // FIXME (klin): measuredMinWidth/Height? I think we only have to do this for other content,
        // since the columns and rows are fixed at this point.
        
        // clear out cache
        colSpanElements = null;
        rowSpanElements = null;
        otherElements = null;
