1 - Vamos criar uma classe para nossa div:
.divExemplo{
cursor:pointer;
background-color:rgb(155,155,155);
width:100px;
height:100px;
}
Basicamente estamos dizendo que nossa div renderizará o cursor como um pointer (a mãozinha que aparece quando colocamos o ponteiro do mouse em cima de um link, por exemplo) em toda a sua área, que é de 100px de largura e altura com um background cinza.2 - Agora vamos para o nosso HTML:
Agora nós envolvemos nossa div com um label, e dentro da nossa div terá nosso input do tipo file com um "display:none", pois não queremos que ela apareça para o usuário. Em qualquer área da div que você clicar, a ação do input file será disparada.
O Código final fica da seguinte maneira(adicionei também um texto para nossa div):
<html>
<head>
<title>Estilizando input file</title>
<style>
.divExemplo{
cursor:pointer;
background-color:rgb(155,155,155);
width:100px;
height:100px;
}
p.alignText{
text-align:center;
}
</style>
</head>
<body>
</body>
</html>
Veja em ação abaixo:
UPDATE
Também podemos fazer da seguinte maneira, com o mesmo efeito:
<html>
<head>
<title> Estilizando input file</title>
<style>
p.style{
text-align:center;
cursor:pointer;
background-color:rgb(155,155,155);
width:100px;
height:100px;
}
</style>
</head>
<body>
</body>
</html>