Since Dojo 1.7, dojo.position, dojo.marginBox, and dojo.contentBox should be called with dojo/dom-geometry module. dojo.position returns an object for the size and the x/y coordinates of the domNode. marginBox and contentBox are based on CSS box model so users can manipulate the position of a domNode. Basically marginBox includes information for margin/padding/border-width, but contentbox only looks at the padding and the domNode itself.
To make a button with special effects, there is a long list of properties that you will need to be familiar with. Here is a Website to play around with these properties and see the change instantly: http://css3please.com/.
In CSS3, rgba() is given as a combination to define color and opacity. So if you define “rgba(255, 255, 255, 0.8)”, opacity is 0.8. The effect will be different from setting opacity property by itself as all child elements will inherit the opacity, while rgba only defines the opacity of a single element.
Below is an example of a form button created using CSS3.