 
         public function appendText( t:String ):void {
             this.text += t;
+
+            var tfield:TextField = this.textfield;
             if (! this.html) {
-                this.textfield.appendText(t);
+                tfield.appendText(t);
+            } else if (tfield.styleSheet == null) {
+                var df:TextFormat = tfield.defaultTextFormat;
+                // reset textformat to workaround flash player bug (FP-77)
+                tfield.defaultTextFormat = df;
+                tfield.htmlText = this.text;
             } else {
-                var df:TextFormat = this.textfield.defaultTextFormat;
-                // reset textformat to workaround flash player bug (FP-77)
-                this.textfield.defaultTextFormat = df;
-                this.textfield.htmlText = this.text;
+                // you can't set defaultTextFormat if a style sheet is applied
+                tfield.htmlText = this.text;
             }
         }
 

            }
            tf.letterSpacing = this.letterspacing;

            this.textfield.defaultTextFormat = tf;

            // measure sample text
            var text:String = this.textfield[this.html ? 'htmlText' : 'text'];
            this.textfield.text = "__ypgSAMPLE__";
            var lm:TextLineMetrics = this.textfield.getLineMetrics(0);
            this.textfield[this.html ? 'htmlText' : 'text'] = text;

            var lh:Number = lm.ascent + lm.descent + lm.leading;
            if (lh !== this.lineheight) {


            //multiline resizable fields adjust their height
            if (this.sizeToHeight) {
                var theight:Number = tfield.textHeight;
                if (theight == 0) theight = this.lineheight;
                this.setHeight(theight + LzTextSprite.PAD_TEXTHEIGHT);
            }
        }

        /**
