gradient-angle: Add working browser-specific canvas backgrounds.

Implements canvas element creation if necessary. Requires a unique
element id.