Minor CSS tweaks.

* be more explicit with the background properly
* remove units from zero
* remove duplicate property and non standard one (`-ms-transition`)
* use the shorthand font property
CSS: tabs to spaces.
Update demo code to the latest online version.

Also fix the validation errors and clean up JS code.
Demo: tab to spaces.