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 :

Alignement images avec float: left


Sujet :

Positionnement en CSS

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Février 2007
    Messages
    747
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 747
    Points : 168
    Points
    168
    Par défaut Alignement images avec float: left
    Bonjour,

    je ne vaux pas une bille en CSS...

    J'aimerais avoir une dizaine de petites vignettes les unes à côté des autres. L'ensemble étant aligné à gauche. Et que suivant la taille de la fenêtre il y a éventuellement un saut de ligne et les vignettes suivantes accolées toujours alignées à gauche.

    J'ai un code suivant :
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <p style="text-align: left;"><img style="margin-right: 9px; float: left;" title="xxx" src="images/xxx.jpg" alt="xxx" width="91" height="129" /><img style="margin-right: 9px; float: left;" title="yyy" src="images/yyy.jpg" alt="yyy" width="91" height="129" />
    (...)
    <img style="margin-right: 9px; float: left;" title="zzz" src="images/zzz.jpg" alt="zzz" width="91" height="129" /><span class="clearfix"></span></p>

    Ce code fonctionne bien tant que la fenêtre n'est pas plus petite que la largeur de toutes les vignettes accolées sur une même ligne.
    Dès que c'est plus petit, et qu'il y a un saut de ligne, la vignette qui passe à la ligne est alignée un peu n'importe comment, etc.

    Comment s'en sortir ?

    Merci pour l'aide
    PAul

  2. #2
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 382
    Points : 5 732
    Points
    5 732
    Billets dans le blog
    1
    Par défaut
    Bonsoir,

    avec bootstrap, on s'en sort (et chu une bille aussi) :

    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
        <meta name="description" content="">
        <meta name="author" content="">
        <link rel="icon" href="../../../../favicon.ico">
     
        <title></title>
     
        <!-- Bootstrap core CSS -->
        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous">
     
         </head>
     
      <body>
     
          <p style="text-align: left;"><img style="margin-right: 9px; float: left;" title="xxx" src="http://via.placeholder.com/640x360?text=1" alt="xxx" width="91px"/></p>
          <p style="text-align: left;"><img style="margin-right: 9px; float: left;" title="xxx" src="http://via.placeholder.com/640x360?text=2" alt="xxx" width="91px"/></p>
          <p style="text-align: left;"><img style="margin-right: 9px; float: left;" title="xxx" src="http://via.placeholder.com/640x360?text=3" alt="xxx" width="91px"/></p>
          <p style="text-align: left;"><img style="margin-right: 9px; float: left;" title="xxx" src="http://via.placeholder.com/640x360?text=4" alt="xxx" width="91px"/></p>
          <p style="text-align: left;"><img style="margin-right: 9px; float: left;" title="xxx" src="http://via.placeholder.com/640x360?text=5" alt="xxx" width="91px"/></p>
          <p style="text-align: left;"><img style="margin-right: 9px; float: left;" title="xxx" src="http://via.placeholder.com/640x360?text=6" alt="xxx" width="91px"/></p>
          <p style="text-align: left;"><img style="margin-right: 9px; float: left;" title="xxx" src="http://via.placeholder.com/640x360?text=7" alt="xxx" width="91px"/></p>
          <p style="text-align: left;"><img style="margin-right: 9px; float: left;" title="xxx" src="http://via.placeholder.com/640x360?text=8" alt="xxx" width="91px"/></p>
     
     
     
     
         <!-- Bootstrap core JavaScript
        ================================================== -->
        <!-- Placed at the end of the document so the pages load faster -->
        <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>
        <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>
     
      </body>
    </html>
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Février 2007
    Messages
    747
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 747
    Points : 168
    Points
    168
    Par défaut
    Merci Laurent,

    Je suis avec un CMS alors ça n'est pas facile de gérer le chargement du Heading. Mais par chance le template utilise Bootstrap
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    <link href="/templates/flex/css/bootstrap.min.css" rel="stylesheet" type="text/css" />

    J'ai mis ton code avec pour chaque image
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    <p style="text-align: left;"><img style="margin-right: 9px; float: left;" etc.></p>
    Malheureusement (sauf erreur) ça ne fonctionne pas. J'obtiens quelque chose comme ça : https://www.cjoint.com/doc/19_01/IAwuMBkdQWU_test.jpg

  4. #4
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 382
    Points : 5 732
    Points
    5 732
    Billets dans le blog
    1
    Par défaut
    Peux-tu donner l'URL de la page qui pose problème ?
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  5. #5
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 382
    Points : 5 732
    Points
    5 732
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    ce matin, j 'ai fait 2 essais : un avec display:table et un avec les flexbox. Le premier fonctionne bien en local, mais si je le mets dans un CMS (j'ai sous la main un site fait avec Wordpress) toutes les images sont mises en colonne, et avec les flexbox, si on réduit la page, au lieu que les images aillent à la ligne, elles restent sur une seule ligne mais leur taille est réduite, donc langue au chat...
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  6. #6
    Futur Membre du Club Avatar de Eregiskhal
    Homme Profil pro
    Entrepreneur
    Inscrit en
    Janvier 2019
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Entrepreneur
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2019
    Messages : 2
    Points : 5
    Points
    5
    Par défaut
    Tu as essayé de mettre un flex-wrap à la flexbox ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    #conteneur
    {
        display: flex;
        flex-wrap: wrap;
    }

  7. #7
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 382
    Points : 5 732
    Points
    5 732
    Billets dans le blog
    1
    Par défaut
    excellent, je connaissais pas.

    Paul, essaie ça :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <div style="display:flex;flex-wrap: wrap;
        flex-direction:row;">
          <img   title="xxx" src="http://via.placeholder.com/640x360?text=1" alt="xxx" width="91px"/>
          <img   title="xxx" src="http://via.placeholder.com/640x360?text=2" alt="xxx" width="91px"/>
          <img   title="xxx" src="http://via.placeholder.com/640x360?text=3" alt="xxx" width="91px"/>
          <img   title="xxx" src="http://via.placeholder.com/640x360?text=4" alt="xxx" width="91px" />
          <img   title="xxx" src="http://via.placeholder.com/640x360?text=5" alt="xxx" width="91px"/>
          <img   title="xxx" src="http://via.placeholder.com/640x360?text=6" alt="xxx" width="91px"/>     
          <img   title="xxx" src="http://via.placeholder.com/640x360?text=7" alt="xxx" width="91px"/>
          <img   title="xxx" src="http://via.placeholder.com/640x360?text=8" alt="xxx" width="91px"/>
        </div>

    J'ai viré tes float:left...
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Février 2007
    Messages
    747
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 747
    Points : 168
    Points
    168
    Par défaut
    Merci ! J'essaie ça tard ce soir ou demain matin tôt.

    Juste un truc : je n'ai pas de DIV dans cette page... Il faut que je la restructure totalement avec des DIV ? ou je peux insérer à l'intérieur des paragraphes, comme ça :
    <p></p><div></div><p></p>

  9. #9
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 382
    Points : 5 732
    Points
    5 732
    Billets dans le blog
    1
    Par défaut
    Le minimum syndical suffit et d'ailleurs, ça marche aussi si tu remplaces la balise <DIV> par une balise <P>
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  10. #10
    Membre habitué
    Profil pro
    Inscrit en
    Février 2007
    Messages
    747
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 747
    Points : 168
    Points
    168
    Par défaut
    Merci !

    Votre code fonctionnait très bien seul.
    Sauf que j’ai besoin que chaque image ait la class « thumbnail » de Bootstrap. Et ça fichait le bazar : le border de chaque image prenait la pleine largeur de la fenêtre. Et on avait toutes les vignettes les unes au-dessus des autres et non accolées comme souhaité…
    :-(

    Mais en mettant votre code dans un <div> plutôt que dans un <p> cela a tout rétabli.
    Ouf

    Merci
    :-)

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

Discussions similaires

  1. Opera avec float:left et width:auto
    Par pop_up dans le forum Mise en page CSS
    Réponses: 7
    Dernier message: 24/04/2008, 16h01
  2. Problème de positionnement avec float left
    Par Neuromancien2 dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 24/08/2007, 00h04
  3. IE7 marge blanche sur images alignées avec float: left
    Par Overstone dans le forum Mise en page CSS
    Réponses: 7
    Dernier message: 14/08/2007, 16h54
  4. probleme de div avec float: left sous FF
    Par Toutouffe dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 14/06/2007, 16h08
  5. Alignement image avec texte
    Par finalfx dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 18/04/2006, 16h05

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