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 :

Agrandissement de la longueur du DIV par nombre de px prédéfini


Sujet :

CSS

  1. #1
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut Agrandissement de la longueur du DIV par nombre de px prédéfini
    Bonjour, j'ai besoin d'un code pour qu'un DIV agrandisse de la longueur du DIV par nombre de px prédéfini.
    C'est à dire que le DIV quand il s'agrandi pour s'adapter à la longueur de sont contenu s'agrandissent par 200 pixel, c'est a dire, si mon DIV fait 600 px et que je rajoute 125 px de texte, le DIV rajouter 200 px de longueur.
    Je ne sais pas si je me suis bien expliquer, mais quelqu'un saurait-il m'aider ?


    Edit: Je viens de tomber sur: line-height, mais il adapte la ligne, donc laisse un gros espace sous le texte, je voudrai la même chose mais qui ne s'appliquer qu'à la hauteur du DIV.

  2. #2
    Membre expert
    Avatar de Muchos
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    1 704
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 704
    Points : 3 861
    Points
    3 861
    Billets dans le blog
    6
    Par défaut
    et que je rajoute 125 px de texte
    Vous ne seriez pas infographiste print à la base? En Web, je ne pense pas que "125px de texte" ait de sens.
    Néanmoins, la fonction calc() [css3 - expérimentale] peut éventuellement vous intéresser. Sinon, peut-être en JavaScript…

  3. #3
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    Je me suis mal exprimer, je veut dire si je rajoute du texte qui me rajoute 150 px environ de longueur que le calque lui prennent 200 px.

    Je vais voir la fonction dont tu me parle, merci

  4. #4
    Membre expert
    Avatar de Muchos
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    1 704
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 704
    Points : 3 861
    Points
    3 861
    Billets dans le blog
    6
    Par défaut
    que le calque lui prennent 200 px
    Il y a peut-être une piste dans ce récent sujet.

    PS: Pourquoi on est sur le forum, un samedi à 7h du matin ·_·' ?

  5. #5
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    Citation Envoyé par Muchos Voir le message
    Justement, j'ai une image PNG en fond de DIV, et je veut que le DIV s'addapte a la hauteur du PNG à chaque agrandissement:

    http://www.zethy.lunnatick.fr/discographie.php


    Si non avec la fonction CALC je ne trouve pas la bonne formule.

  6. #6
    Membre habitué Avatar de elfamine
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2011
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2011
    Messages : 113
    Points : 186
    Points
    186
    Par défaut
    une solution à court terme serait de mettre un padding-bottom: 63px; à #corps_dic.

    une solution en jquery peut etre ?

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    var height = $('#corps_dic').height();
    var mod = height % 129;
    var padding = 129 - mod;
     
    if (mod) $('#corps_dic').css({
        'padding-bottom': padding + 'px'
    });

  7. #7
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    Merci

    La balise jquery et la même que JavaScript ?

    Edit: En fai la solution, n'est pas bonne, je ne veut pas ajouter 129px an bas du calque, mais que la calque s'allonge par inteval de 190 px

  8. #8
    Membre habitué Avatar de elfamine
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2011
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2011
    Messages : 113
    Points : 186
    Points
    186
    Par défaut
    l'image que t'as mis en background est de 129px. pour avoir l'effet que tu souhaite il faudrait que le height de "corps_dic" soit un multiple de 129px.

    1 - on recupére le height actuel de "corps_dic" (dans le cas échéant 840px)
    2 - 840%129 (840 modulo 129) = 66
    3 - puisque la valeur n'est pas égale à 0 on compense ; 129px-66px = 63px
    4 - on met donc 63px en padding-bottom

    c'est certainement pas la seule solution, mais c'est la première à laquelle je peux penser

    voila le code en javascript pure
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    var block = document.getElementById("corps_dic"),
        height = block.clientHeight,
        mod = height % 129,
        padding = 129 - mod+"px";
     
    if (mod)  block.style.paddingBottom = padding;

    en espérant que ca puisse t'aider ,)

  9. #9
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    Merci mais ca ne fonctionne pas, j'ai essayer en placer le JS entre Head et Head et entre Body et Body rien n'y fait

  10. #10
    Membre habitué Avatar de elfamine
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2011
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2011
    Messages : 113
    Points : 186
    Points
    186
    Par défaut
    essaye comme ca pour voir :

    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
     
    <div id="corps_dic">
    si ton div est à ce niveau... 
    </div>
    .
    .
    .
    <script>
    //ton script doit etre à ce niveau soit : plus bas dans le body
    (function() {
    var block = document.getElementById("corps_dic"),
        height = block.clientHeight,
        mod = height % 129,
        padding = 129 - mod+"px";
     
    if (mod)  block.style.paddingBottom = padding;
     
    })();
    </script>

  11. #11
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    Placer sous le DIV en question cela fonctionne parfaitement, encore merci

  12. #12
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    à supprimer aussi :

    à la fin du fichier :
    </div>
    </body>
    </body>
    </html>
    Et pour les scripts (partout) :
    <script language="JavaScript" type="text/JavaScript">
    + mettre TOUS les styles CSS dans un fichier externe.
    (déjà dit dans un autre post)

  13. #13
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    Merci

    J'ai donc supprimer la balises en trop.

    Pour les JS et les CSS je placerai tous dans des fichiers externes après

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ouverture/fermeture progressive d'un div (par agrandissement)
    Par Gliss' dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 19/06/2008, 09h05
  2. Ouverture/fermeture progressive d'un div (par agrandissement) Suite
    Par Benzz dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 19/06/2008, 08h49
  3. div par dessus scrollbar
    Par zizou771 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 29/08/2005, 11h02
  4. [W3C] Est-il possible d'afficher un div par dessus une applet ?
    Par drinkmilk dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 23/02/2005, 10h22
  5. Remplacer le contenu d'un div par un autre
    Par prgasp77 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 24/10/2004, 23h48

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