Why should we use shorthand in css, or in anything at all? In short, it
makes a file smaller therefore faster to load and more efficient.
My cheat-cheat sheet of some of the common short-hand are:
1. Shorthand hex colors.
RGB colors that are usually specified in 6 characters, such as #ffcc00, can be abbreviated as #fc0. That is, for the 3 pairs of the color code in a hex color specification, if each pair has two identical color characters, we can use only one character for the pair. Therefore the color white #fffff can be shortedn as #fff.
2. border css style
borders can come in a all sorts of flavors that are results of different combinations of the three elements: width, style and color, and a shortened border style can be specified in the order the three elements too, so you often see border styles are written as the following:
.thinborder {1px solid #000}
3. background
css style for backgrounds can be verbose too and you can specify a background by its color (background-color), image (background-image), whether to repeat (background-repeat), background-position. We can specify all of the elements in one line:
.background {#fff url(bg.png) no-repeat center}
4. font
font can be tweaked in a million of ways too, including style, variant, weight, sise, inline-height, font family.
A short-handed font style can be like this:
.font {bold italic small-caps 10pt aria}
A cheat sheet below (found at http://www.impressivewebs.com/css-font-shorthand-property-cheat-sheet/)

5. List style
Often, to start with a clean slate, use the following:
list-style: none
list-style:none
List has 3 css attributes: type, position, image.
The default style for list is:
list-style:disc outside none
A short-handed list style specification is like this:
list-style: disc inside url (.../img.gif)
References:
http://www.qianduan.net/css-font-shorthand-attribute-handbook.html