Bien le bonjour !

Je relaie ici une question que j'ai déjà posée chez ces braves gens de Stackoverflow mais à laquelle je n'ai reçu aucune réponse digne de ce nom. J'ai l'espoir de trouver chez les experts d'Alsacréations de meilleures pistes de réflexion Smiley cligne

C'est une question récurrente sur le web: comment styliser un input type="file" dans un formulaire html ? Il y a pour ça tout un tas de techniques bien connues (qui ne sont pas franchement des plus orthodoxes), mais ce n'est pas vraiment ça qui m'intéresse ici. Ce que je voudrais comprendre c'est pourquoi ce type particulier d'input est si complexe à mettre en forme.

Les réponses reçues sur SO mettaient en avant la sécurité, mais sans être étayées par quoi que ce soit (aucune référence, aucune explication technique poussée). De plus j'ai du mal à comprendre en quoi l'accès à une fonctionnalité bas niveau d'un OS devraient influencer une mise en forme simple de son interface utilisateur-final. Que chaque navigateur et chaque OS proposent des API différentes pour accéder au système de fichier, ça me paraît tout à fait normal, et je comprendrais que ça se ressente une fois la fenêtre permettant de parcourir les fichiers ouverte. Mais pourquoi cette limitation devrait-elle remonter (à ce point !) jusqu'à l'interface utilisateur ?

J'espère que vous pourrez éclairer ma (et en fait "notre", car ça on est plusieurs à chercher, au boulot) lanterne Smiley smile
Modifié par mOrbide (24 Oct 2012 - 14:07)
Salut,
Je n'ai pas LA réponse mais peut être une piste de réflexion... je pense que c'est avant tout pour ne pas perturber les utilisateurs de leurs systèmes/os.(ergonomie)
Si on regarde bien, la barre de scroll n'est pas modifiable non plus par exemple, car ce sont des éléments de navigation basique. Et pourquoi ne peut on pas crée de input en forme de losange ou de L?
UltrAs001 a écrit :
Si on regarde bien, la barre de scroll n'est pas modifiable non plus par exemple, car ce sont des éléments de navigation basique.

Non, mais n'importe quel input de n'importe quel formulaire HTML et personnalisable de A à Z, donc pourquoi pas celui-là ? Du point de vue de l'utilisateur final, c'est un champ d'un formulaire comme n'importe quel autre, donc il n'y a à priori pas de raison qu'il ne puisse pas être mis en forme de la même façon. Que du contraire; c'est perturbant d'avoir un bouton au look sorti de nulle part au beau milieu d'un formulaire qui a été complètement stylisé (peu importe les raisons, qu'elles soient ergonomiques, esthétiques ou les deux).

Pour ce qui est de la barre de scroll, c'est plus compréhensible puisqu'elle s'attache au rendu des fenêtres et pas à celui de leur contenu.

UltrAs001 a écrit :
Et pourquoi ne peut on pas crée de input en forme de losange ou de L?

Parce que ça serait complètement contre-intuitif pour n'importe quel utilisateur. Mais sinon c'est tout à fait faisable (et c'est probablement utilisé pour des interfaces spécifiques; on imagine facilement un jeu avec des formulaires de configuration au look exotique).
Modifié par mOrbide (24 Oct 2012 - 14:48)