Podes detectar el navegador (con cualquier lenguaje podes hacerlo, usa el buscador del foro lo vimos muchas veces: "jquery browser plugin", "clase browser.php", "comentarios condicionales") o detectar el soporte de propiedades con modernizr. A quien no soporte gradientes podes entregar un png de fondo. Debes tener el input text transparente y sin outline anidado dentro de por ejemplo un div al cual le aplicas el fondo, esto
para evitar en ie7 que cuando se llene el input se scrolee la imagen
ej:
Código CSS:
Ver originaldiv{ width:...; height:...; background:url("dir/img.xxx") 0 0 no-repeat; }
input{ width:...; height:...; outline:none; border:none; background-color:transparent;}
Para saber del soporte que cada navegador da a las propiedades podes usar el sitio caniuse.com
Saludos.