1.animate parts of your design without the need for the likes of JavaScrip
2.allowing smooth animation (rather than a jump from one state to another).
transition:[transition-property-default:all],
transition-duration,
[transition-timing-function-default:ease],linear ,ease-in ,ease-out ,ease-in-out,cubic Bézier curve(n,n,n,n)
transition-deplay:default:0];
eg
a:link{
transition:all,.5s,linear,0;
}
a:link{
transition:color .5s font-size 2s;
}