Hola sheilac.
Estuve renegando un rato con esto porque me pareció interesante y logré hacerlo de la siguiente manera:
<html>
  <head>                           
    <script language="JavaScript" type="text/javascript">
      function clickFile(){
        fileImagen=document.getElementById("btExaminar");
        Ruta=document.getElementById("labelRuta"); 
        
        fileImagen.click(); // ESTO NO FUNCIONA EN FIREFOX Y NO ENCUENTRO COMO HACERLO :-\
        Ruta.firstChild.nodeValue=fileImagen.value;
      }
    </script>
    <title></title>   
    <style type="text/css">  
      #btExaminar {display: none; }
      #labelRuta {
        font-family:cursive;
        font-size:120%;        
        font-style:oblique;  
        font-weight:bold;
      }
    </style>
  </head>
  <body>
    <form name="formulario">
      <input type="file" name="btExaminar" id="btExaminar"> 
                                
      <span id="labelRuta">Seleccione la imágen</span><br />
      <a href='javascript:;' onclick="return clickFile()">
        <img src="examinar.bmp" alt="" border="0">
      </a> 
      
    </form>
  </body>
</html>
 
En realidad, el input tipo "file", está oculto ("display: none;") pero utilizando JavaScript para disparar su evento "Click()" y tomar la ruta seleccionada se puede lograr tu cometido. Es más, podés diseñarlo como se te antoje.
El único problema es que de eventos yo no conozco mucho y no logro encontrar la forma correcta de ejecutar esta línea 
en FireFox, por lo tanto para probarlo necesitas utilizar IE  

 . A vos te toca averiguar como hacerlo para que funque en cualquier navegador (y de paso me contás cómo).
De todas es solo una idea de donde puedas arrancar.
Un saludo