IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mise en page CSS Discussion :

Background-image input file Parcourir


Sujet :

CSS

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2009
    Messages
    201
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 201
    Points : 48
    Points
    48
    Par défaut Background-image input file Parcourir
    Bonsoir,

    J'essaye de modifier le bouton "Parcourir..." de mes input file mais sans succès

    Je voudrais insérer une image en backgroud et enlever le texte "Parcourir..." avec du CSS.

    Avez-vous un exemple fonctionnel sur la plupart des navigateurs à me donner ?

    Merci

  2. #2
    Membre du Club
    Inscrit en
    Juillet 2009
    Messages
    201
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 201
    Points : 48
    Points
    48
    Par défaut
    Sur mes recherches, je trouve beaucoup de script JavaScrit / Jquery couplé a du CSS, pour modifier le design du input et du bouton...

    A première vue, il n'est pas possible de le faire uniquement avec CSS ?

  3. #3
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2012
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 93
    Points : 161
    Points
    161
    Par défaut
    Bonjour Seb-65,

    as tu essayer de changer le css en utilisant:
    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
    input[type="file"]{}

  4. #4
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2012
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 93
    Points : 161
    Points
    161
    Par défaut
    Je viens de trouver un tutos sur developpez.net , je t'invite donc à y jeter un oeil -> Personnaliser les champs d'un formulaire

  5. #5
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 564
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 564
    Points : 21 629
    Points
    21 629
    Par défaut
    Citation Envoyé par seb-65 Voir le message
    Sur mes recherches, je trouve beaucoup de script JavaScrit / Jquery couplé a du CSS, pour modifier le design du input et du bouton...

    A première vue, il n'est pas possible de le faire uniquement avec CSS ?
    Sauf erreur de ma part, le JavaScript ne sert qu'à se simplifier un peu la vie pour placer les contrôle, et à récupérer le nom du fichier sélectionné.

    Il y a moyen de faire exactement ce qu'ils proposent uniquement en CSS, mais dans ce cas l'utilisateur ne verra plus le fichier qu'il a sélectionné, après l'avoir sélectionné. Alors qu'il a l'habitude de le voir écrit à côté du bouton.

    Les input file, étant composés de deux contrôles : (champ texte ou label)/bouton, au choix du navigateur, les conventions CSS habituelles ne disent pas ce qu'il faut en faire.
    Autrement dit, ce n'est pas prévu pour être simple.

  6. #6
    Membre du Club
    Inscrit en
    Juillet 2009
    Messages
    201
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 201
    Points : 48
    Points
    48
    Par défaut
    @mcoutant
    Je n'arrive pas à changer le background-image du bouton.

    @thelvin
    Il y a moyen de faire exactement ce qu'ils proposent uniquement en CSS, mais dans ce cas l'utilisateur ne verra plus le fichier qu'il a sélectionné, après l'avoir sélectionné. Alors qu'il a l'habitude de le voir écrit à côté du bouton.
    Oui, mais comment faire en CSS, as-tu un exemple s'il te plait ?

    Je sais renvoyer le nom du fichier sélectionné par une fonction JS simplement dans un span ou div...

  7. #7
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2012
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 93
    Points : 161
    Points
    161
    Par défaut
    Dans le tutos que je t'ai donné tu a normalement tout le code expliqué

  8. #8
    Membre du Club
    Inscrit en
    Juillet 2009
    Messages
    201
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 201
    Points : 48
    Points
    48
    Par défaut
    @mcoutant
    Le tuto http://j-willette.developpez.com/tut...inputfile.html ne fonctionne pas sous IE

    Je viens de faire le test sous Internet Explorer 9 et le bouton parcourir n'est pas clicable !! Sous FF pas de problème !

    Pouvez-vous essayer de cliquer sur Parcourir et voir si la fenêtre de sélection s'ouvre bien avec IE ??

    Merci

  9. #9
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2012
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 93
    Points : 161
    Points
    161
    Par défaut
    Effectivement j'avais pas vérifier sur IE (d'ailleurs j'aurais dû commencer par là ) du coup je laisse ma place si quelqu'un à une réponse je serais heureux de voir la solution

  10. #10
    Membre du Club
    Inscrit en
    Juillet 2009
    Messages
    201
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 201
    Points : 48
    Points
    48
    Par défaut
    Bon cela me rassure un peu...

    IE n'aime pas trop que l'on "hack" les formulaires, je galère avec les forms sous IE et même avec Jquery j'obtiens des résultats très étrange...

  11. #11
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2012
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 93
    Points : 161
    Points
    161
    Par défaut
    Le problème c'est que IE n'aime pas grand chose

  12. #12
    Membre actif
    Homme Profil pro
    DSI interne
    Inscrit en
    Juin 2011
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : DSI interne
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2011
    Messages : 197
    Points : 290
    Points
    290
    Par défaut
    Et en trichant un peu ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    <html>
    <head>
    <style type="text/css">
    div.inputs {
    	position: relative;
    }
     
    div.image_lien {
    	position: absolute;
    	top: 0px;
    	left: 0px;
    	z-index: 1;
    }
     
    input.fichier {
    	position: relative;
    	text-align: right;
    	-moz-opacity:0 ;
    	filter:alpha(opacity: 0);
    	opacity: 0;
    	z-index: 2;
    }
    </style>
    </head>
    <body>
    <div class="inputs">
    	<input type="file" class="fichier" />
    	<div class="image_lien">
    		<input />
    		<img src="http://www.24.com/images/btn_search.png" />
    	</div>
    </div>
    </body>
    </html>

  13. #13
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 887
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 887
    Points : 16 320
    Points
    16 320
    Par défaut
    Ce que j'avais fait dans le tuto reste de la bidouille pour montrer que c'était possible. Mais il ne faudrait pas l'utiliser je pense, le champ de type file étant trop différent selon les navigateurs.

    Pour actualiser le tuto, je l'ai fait y a un moment (5 ans tout de même) et ça fonctionnait sur IE8. Maintenant, pour le faire fonctionner aussi sur IE9, il suffirait de supprimer le onmousedown="return false;" du champ file.

    Une autre solution serait d'utiliser Flash pour faire ton bouton, comme ça tu le desgines vraiment comme tu l'entends. Et en plus tu peux choisir le type de fichiers à sélectionner.

  14. #14
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2012
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 93
    Points : 161
    Points
    161
    Par défaut
    La solution de MindBuster marche très bien sur tout les naviguateurs, seul hic tu ne vois plus le chemin dans l'input, après faudrais que tu récupère le nom du fichier en js pour l'afficher à coté (sinon l'utilisateur va croire que ça n'a pas marché).

Discussions similaires

  1. Image input file
    Par Kel-T dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 13/09/2011, 22h55
  2. Tag Input File (visualisation image en local)
    Par jacquesdx dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 21/08/2009, 09h43
  3. Image pour un Input File ?
    Par Guybrush113 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 10/12/2007, 17h23
  4. Simulation du bouton Parcourir sur un input file
    Par mego dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 02/08/2006, 19h44
  5. Input file sur une image
    Par Fonzy17 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 21/06/2006, 11h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo