add css props and some refactoring
Merge remote-tracking branch 'origin/2.0.x' into 2.0.x