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 :

Problème avec la taille d'un INPUT


Sujet :

CSS

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    344
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 344
    Par défaut Problème avec la taille d'un INPUT
    Bonjour,

    Je débute en CSS. J'aimerais qu'un champ INPUT prenne toute la largeur d'une cellule TD

    Pour cela j'ai défini le code CSS suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    input
    {
       width: 100%;
    }
    Le problème est que lors du rendu (Internet Explorer, Opéra, ...) le champ INPUT est légèrement plus grand que la cellule TD.

    Comment faire pour résoudre ce problème (le problème existe également avec le champ TEXTAREA.

    Je remercie par avance de votre aide.

  2. #2
    Rédacteur

    Avatar de Torgar
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2007
    Messages
    2 334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2007
    Messages : 2 334
    Par défaut
    Salut,

    Mettre 99%

    Tu dois avoir un padding sur ta cellule ce qui fait qu'elle déborde.
    Je ne suis pas schizophrène, nous sommes unanime !!!

    ► Pensez à la balise code et au CODE HTML GENERE !!!!
    ► Au si c'est le cas et au à ceux qui vous ont aidé.
    Vous souhaitez participer aux rubriques CSS et (X)HTML ? Contactez-nous !

    Créer des colonnes de même hauteur en CSS
    Glossaire CSS
    Les bordures en CSS3
    Les transitions en CSS3

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    344
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 344
    Par défaut
    Merci pour ta réponse.

    Je n'ai pas de padding sur ma cellule (j'ai tout forcé à 0px)

    J'ai bien pensé à cette solution mais elle ne me convient pas vraiment !!

    En effet, le but de mon 100% est d'aligner tous les éléments à gauche et à droite dans mon tableau. Et si je mets 99% pour l'INPUT et 100% pour les DIV alors, plus la page grandit et moins les éléments sont alignés à droite.

    Je ne comprend pas pourquoi le 100% sur un DIV n'est pas égal à un 100% sur un INPUT ou un TEXTAREA puisque la taille censée être prise en compte est celle du parent donc celle de ma cellule ?

    Pourquoi ce comportement étrange ?

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 227
    Par défaut
    Bonjour,
    il te faut mettre le padding et le margin de l'INPUT à 0 en même temps qu'une largeur à 100%
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    input{
      width:100%;
      margin:0;
      padding:0;
    }
    et avec un border:none tu occuperas toute la largeur.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    344
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 344
    Par défaut
    J'ai essayé et ça ne marche toujours pas !!
    Pour simplifier le problème j'ai réduit le code au maximum afin de comprendre d'où le problème peut venir. J'en suis arrivé à ce code suivant :

    HTML :
    Code html : 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
    <!DOCTYPE html>
    <html>
    <head>
        <link href="style.css" rel="stylesheet" type="text/css" />       
        <title>Page test</title>
    </head>
    <body>
        <section>
    		<article>
    			<ul>
    				<li><input name="LanguesId" type="checkbox" value="4" />Allemand</li>
    				<li><input name="LanguesId" type="checkbox" value="2" />Anglais</li>
    				<li><input name="LanguesId" type="checkbox" value="7" />Arabe</li>
    				<li><input name="LanguesId" type="checkbox" value="3" />Espagnol</li>
    			</ul>
    			<div>
    				Mon contenu
    			</div>
    			<input type="text" />
    		</article>
        </section>
    </body>
    </html>

    CSS :
    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
    35
    36
    37
    38
    article
    {
        margin: 0px auto;
        width: 20%;
    }
     
    ul
    {
        background-color: White;
        border: 1px solid #abadb3;
        height: 100px;
        margin: 0px;
        overflow: auto;
        padding: 0px;
        width: 100%;
    }
     
    li
    {
        display: block;
        margin: 0px;
        padding: 0px;
        list-style-type: none;
    }
     
    input[type=text]
    {
        margin: 0px;
        padding: 0px;
        width: 100%
    }
     
    div
    {
        border: 1px solid #abadb3;
        height: 30px;
        width: 100%;
    }
    Et la taille 100% du champ INPUT est différent du 100% du UL et du 100% du DIV ??????

  6. #6
    Membre confirmé Avatar de raydenprod
    Homme Profil pro
    Frontend Developer
    Inscrit en
    Février 2013
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Frontend Developer

    Informations forums :
    Inscription : Février 2013
    Messages : 38
    Par défaut
    en fait c'est dû au fait que tu mets ta div et ton ul à 100% et que tu leurs appliques une bordure. En effet, il applique la bordure en + du 100% ce qui veut dire que ton ul et ta div font 2 px de large de + que ce qu'elles devraient (bordure gauche + bordure droite)

    il faut donc que tu réduises la largeur de ta div et de ton ul

Discussions similaires

  1. [Conception] problème avec firefox sur les champs input type="file"
    Par maverick56 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 9
    Dernier message: 11/05/2007, 11h57
  2. Aide: Problème avec la taille de mon fichier
    Par ATTIA dans le forum Langage
    Réponses: 6
    Dernier message: 15/03/2006, 11h19
  3. Problème avec la taille d'un fichier xml
    Par ANISSS dans le forum XML/XSL et SOAP
    Réponses: 4
    Dernier message: 26/01/2006, 18h11
  4. [JScrollPane] Problème avec la taille du composant interne
    Par wikers dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 11/09/2005, 16h03
  5. Problème avec la taille du memo?
    Par diado dans le forum Bases de données
    Réponses: 6
    Dernier message: 18/08/2004, 00h44

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