improve setStyle