svg as part of css is supported by all browsers (except IE 8 and below and android 2.3 and below), gives a perfect gradient, is small, scalable and completely according to w3c... ;-)