                 }
             }
         }
-    }
-    
+        
+        var isTargetIStyleClient : Boolean = target is IStyleClient;
+        
+        if ( isTargetIStyleClient == false && targets != null )
+        {
+        	for each ( var obj : Object in targets )
+        	{
+        		isTargetIStyleClient = obj is IStyleClient;
+        		if ( isTargetIStyleClient == true ) break;
+        	}
+        }
+    }
+
     /**
      *  @protected
      * 

            cssStyleDeclaration = StyleManager.getStyleDeclaration( "." + styleName );
        }
        
        return cssStyleDeclaration;
    }
    
    /**

    /**
     *  The target object to apply the CSS values to.
     */
    public function get state() : String 
    {
        return __state;
    }
    public function set state( val : String ) : void
    {
        __state = val;
        __stateChanged = true;
        invalidateProperties();
    }

    /**
     *  The target object to apply the CSS values to.
     */
    public function get target() : Object 
    {
        return __target;
    }
    public function set target( val : Object ) : void
    {

        __target = val;
        __targetChanged = true;
        invalidateProperties();
