      */
     protected function getElementPreferredHeight(element:Object):Number
     {
-        if (element is ILayoutElement)
+		if (element is StyleableTextField)
+		{
+			// We only care about the "real ascent"
+			return StyleableTextField(element).textTopToLastBaselineHeight;
+		}
+		else if (element is ILayoutElement)
         {
             return ILayoutElement(element).getPreferredBoundsHeight();
         }

     */
    protected function setElementPosition(element:Object, x:Number, y:Number):void
    {
        if (element is ILayoutElement)
        {
            ILayoutElement(element).setLayoutBoundsPosition(x, y, false);
        }

        if (!labelDisplay)
            return;
        
        var paddingLeft:Number   = getStyle("paddingLeft"); 
        var paddingRight:Number  = getStyle("paddingRight");
        var paddingTop:Number    = getStyle("paddingTop");
        var paddingBottom:Number = getStyle("paddingBottom");
