Partage
  • Partager sur Facebook
  • Partager sur Twitter

child odd et even

    10 juin 2017 à 13:22:10

    bonjours je vous met une capture

    là ca marche bien texte droite et gauche (grace odd et even)

    voilà le html

    	  <ol>
    	  <li><p><span>message</span><time datetime="2012-02">février 2012</time></p><span class="avatar-messagerie-homme" title="avatar homme"></span></li>
    	  <li><span class="avatar-messagerie-homme" title="avatar homme"></span><p><span>message</span><time datetime="2012-02">février 2012</time></p></li>
    	  </ol>
    

    et le css :

          .messagerie div li:nth-child(even), .messagerie div li:nth-child(odd)
    	  {
    	  border-bottom:1px solid #CCCCCC;
    	  width:100%;
    	  }
    
          .messagerie div li:nth-child(even)
    	  {
    	  text-align:left;
    	  }
    
          .messagerie div li:nth-child(odd)
    	  {
    	  text-align:right;
    	  }
    
    	  .messagerie div li span:nth-child(even), .messagerie div li span:nth-child(odd)
    	  {
    	  width:3.5em;
    	  height:3.5em;
    	  border:1px solid #CCCCCC;
    	  border-radius:50%;
    	  display:inline-table;
    	  margin:1em;
    	  }
    
    	  .messagerie div li p:nth-child(even), .messagerie div li p:nth-child(odd)
    	  {
    	  display:inline-block;
    	  }
    	  .messagerie div li p:nth-child(even)
    	  {
    	  margin-left:3em;
    	  }
    
    	  .messagerie div li p:nth-child(odd)
    	  {
    	  margin-right:3em;
    	  }
    
    
    	  .messagerie div li p span:nth-child(odd), .messagerie div li p span:nth-child(even)
    	  {
    	  padding:1em;
    	  position: relative;
    	  -moz-border-radius:10px;
    	  -webkit-border-radius:10px;
    	  border-radius:10px;
    	  width:35em;
    	  margin:0;
    	  }
    
    	  .messagerie div li p span:nth-child(odd)
    	  {
    	  background:#FF0000;
    	  }
    
    	  .messagerie div li p span:nth-child(even)
    	  {
    	  background:#CCCCCC;
    	  }
    
    
    	  .messagerie div li p span:nth-child(odd):before, .messagerie div li p span:nth-child(even):before
    	  {
    	  content:"";
    	  position: absolute;
    	  width: 0;
    	  height: 0;
    	  border-top: 13px solid transparent;
    	  border-bottom: 13px solid transparent;
    	  }
    
    	  .messagerie div li p span:nth-child(odd):before
    	  {
    	  right: 100%;
    	  top:0.5em;
    	  border-left: 26px solid #FF0000;
    	  }
    
    
    	  .messagerie div li p span:nth-child(even):before
    	  {
    	  left: 100%;
    	  top:0.5em;
    	  border-right: 26px solid #CCCCCC;
    	  }
    
    	  .messagerie div li p time:nth-child(odd), .messagerie div li p time:nth-child(even)
    	  {
    	  display:block;
    	  padding-top:1em;
    	  }
    

    j'ai 3 questions qui ne fonctionne pas 

    1er question : j'ai mis ce css 

    	  .messagerie div li p span:nth-child(odd)
    	  {
    	  background:#FF0000;
    	  }
    
    	  .messagerie div li p span:nth-child(even)
    	  {
    	  background:#CCCCCC;
    	  }
    


    ca ne veux pas changer la couleur pour temps j'ai mis odd et even 

    2 eme question c'est la flêche grave before

    	  .messagerie div li p span:nth-child(odd):before, .messagerie div li p span:nth-child(even):before
    	  {
    	  content:"";
    	  position: absolute;
    	  width: 0;
    	  height: 0;
    	  border-top: 13px solid transparent;
    	  border-bottom: 13px solid transparent;
    	  }
    
    	  .messagerie div li p span:nth-child(odd):before
    	  {
    	  right: 100%;
    	  top:0.5em;
    	  border-left: 26px solid #FF0000;
    	  }
    
    
    	  .messagerie div li p span:nth-child(even):before
    	  {
    	  left: 100%;
    	  top:0.5em;
    	  border-right: 26px solid #CCCCCC;
    	  }
    

    là encore une fois j'ai mis odd et even avec left et right

    mais il ne  veut pas changé la flèche 

    merci d'avance

    • Partager sur Facebook
    • Partager sur Twitter
      10 juin 2017 à 13:34:30

      Bonjour,

      pour la couleur c'est que tu cibles le span:nth-child à l'intérieur des li et pas les li eux-mêmes, contrairement à ce que tu fais pour les alignements.

      Ça doit être la même chose pour les ::before.

      (par contre, as-tu vraiment besoin de ces sélecteurs à rallonge ? un simple ".messagerie .message" suffirait si tu donnais la classe "message" à tes li par exemple)

      (et pense qu'un message peut être composé de plusieurs phrases, voir de plusieurs paragraphes, un span ne me semble pas l'élément le plus sémantiquement adapté)

      -
      Edité par Lamecarlate 10 juin 2017 à 13:43:27

      • Partager sur Facebook
      • Partager sur Twitter

      Pas d'aide concernant le code par MP, le forum est là pour ça :)

        10 juin 2017 à 14:15:55

        merci, j'ai bien mis message sur ol 

        mais ca ne change pas grand chose

        tu pourras me donner un exemple juste un plan et après je penses que ca sera bon 

        merci

        • Partager sur Facebook
        • Partager sur Twitter
          10 juin 2017 à 14:23:14

          Quel est ton nouveau code ? (HTML et CSS)
          • Partager sur Facebook
          • Partager sur Twitter

          Pas d'aide concernant le code par MP, le forum est là pour ça :)

            10 juin 2017 à 14:43:40

            j'ai html

            	  <!--Début de la boîte Messagerie-->
            	  <div class="messagerie">
            
            	  <!--Début aside-->
            	  <aside>
            
            	  <ol>
            	  <li><span class="avatar-messagerie-homme" title="avatar homme"></span><span>Pseudo<p>Bonjours, je me presentes ... </p></span><time datetime="2012-02">février 2012<span class="icon-mp-lu" title="lu">Lu</span></time></li>
            	  <li><span class="avatar-messagerie-homme" title="avatar homme"></span><span>Pseudo<p>Bonjours, je me presentes ... </p></span><time datetime="2012-02">février 2012<span class="icon-mp-lu" title="lu">Lu</span></time></li>
            	  <li><span class="avatar-messagerie-homme" title="avatar homme"></span><span>Pseudo<p>Bonjours, je me presentes ... </p></span><time datetime="2012-02">février 2012<span class="icon-mp-lu" title="lu">Lu</span></time></li>
            	  <li><span class="avatar-messagerie-homme" title="avatar homme"></span><span>Pseudo<p>Bonjours, je me presentes ... </p></span><time datetime="2012-02">février 2012<span class="icon-mp-lu" title="lu">Lu</span></time></li>
            	  </ol>
            
            	  </aside>
            	  <!--Fin aside-->
            	  <!--Début du contenu-->
            	  <div>
            
            	  <ol class="message">
            	  <li><p>message fffffffffffffffffffffff fffffffffffffffffffffffff ttttttttttttttttttttttttttttt fffffffffffffffffff ddddddddddddddddddddddd rrrrrrrrrrrrrrrrrrr<time datetime="2012-02">février 2012</time></p><span class="avatar-messagerie-homme" title="avatar homme"></span></li>
            	  <li><span class="avatar-messagerie-homme" title="avatar homme"></span><p>message<time datetime="2012-02">février 2012</time></p></li>
            	  </ol>
            
            	  </div>
            	  <!--Fin du contenu<time datetime="2012-02">février 2012</time>-->
            	  <!--Début aside-->
            	  <aside>
            
            
            
            	  </aside>
            	  <!--Fin aside-->
            	  </div>  
            	  <!--Fin de la boîte Messagerie-->
            
            /*********************************************************************************************************Début messagerie****************************************************************************************************************************************/
            
                  .messagerie
            	  {
            	  overflow:hidden;
            	  height: calc(100% - 16em);
            	  }
            
                  .messagerie aside
            	  {
            	  float: left;
            	  width: 30em;
            	  border: 1px solid #CCCCCC;
            	  height: calc(100% - 0em);
            	  overflow-y:auto;
            	  }
            
                  .messagerie div
            	  {
            	  float: left;
            	  margin-left: 1em;
            	  margin-right: 1em;
            	  width:84.6em;
            	  border: 1px solid #CCCCCC;
            	  height: calc(100% - 0em);
            	  overflow-y:auto;
            	  }
            /**********************début cadre gauche**************************************/
            
                  .messagerie aside li
            	  {
            	  border-bottom:1px solid #CCCCCC;
            	  display:flex;
            	  }
            
                  .messagerie aside li span:nth-child(1)
            	  {
            	  order:1;
            	  width:3.5em;
            	  height:3.5em;
            	  border-radius:50%;
            	  border:1px solid #CCCCCC;
            	  margin-top:1em;
            	  margin-left:1em;
            	  padding:0;
            	  text-align:center;
            	  display:inline-flex;
            	  float:left;
            	  }
            
                  .messagerie aside li span:nth-child(2)
            	  {
            	  order:2;
            	  flex:1;
            	  padding:1em;
            	  padding-bottom:0;
            	  }
            
                  .messagerie aside li time
            	  {
            	  order:3;
            	  padding:1em;
            	  padding-bottom:0;
            	  }
            
                  .messagerie aside li p
            	  {
            	  width:15em;
            	  }
            
                  .messagerie aside li time span:nth-child(1)
            	  {
            	  display:block;
            	  border:0;
            	  margin-top:1em;
            	  height:0;
            	  }
            
            /**********************Fin cadre gauche**************************************/
            /**********************début cadre centrer**************************************/
            
                  .message li:nth-child(even), .message li:nth-child(odd)
            	  {
            	  border-bottom:1px solid #CCCCCC;
            	  width:100%;
            	  }
            
                  .message li:nth-child(even)
            	  {
            	  text-align:left;
            	  }
            
                  .message li:nth-child(odd)
            	  {
            	  text-align:right;
            	  }
            
            	  .message li span:nth-child(even), .message li span:nth-child(odd)
            	  {
            	  width:3.5em;
            	  height:3.5em;
            	  border:1px solid #CCCCCC;
            	  border-radius:50%;
            	  display:inline-table;
            	  margin:1em;
            	  }
            
            	  .message li p:nth-child(even), .message li p:nth-child(odd)
            	  {
            	  display:inline-block;
            	  }
            	  .message li p:nth-child(even)
            	  {
            	  margin-left:3em;
            	  }
            
            	  .message li p:nth-child(odd)
            	  {
            	  margin-right:3em;
            	  }
            
            	  .message li p span:nth-child(odd), .message li p span:nth-child(even)
            	  {
            	  padding:1em;
            	  position: relative;
            	  -moz-border-radius:10px;
            	  -webkit-border-radius:10px;
            	  border-radius:10px;
            	  max-width:35em;
            	  width:auto;
            	  margin:0;
            	  }
            
            	  .message li p span:nth-child(odd)
            	  {
            	  background:#FF0000;
            	  }
            
            	  .message li p span:nth-child(even)
            	  {
            	  background:#CCCCCC;
            	  }
            
            	  .message li p span:nth-child(odd):before, .message li p span:nth-child(even):before
            	  {
            	  content:"";
            	  position: absolute;
            	  width: 0;
            	  height: 0;
            	  border-top: 13px solid transparent;
            	  border-bottom: 13px solid transparent;
            	  }
            
            	  .message li p span:nth-child(odd):before
            	  {
            	  right: 100%;
            	  top:0.5em;
            	  border-left: 26px solid #FF0000;
            	  }
            
            
            	  .message li p span:nth-child(even):before
            	  {
            	  left: 100%;
            	  top:0.5em;
            	  border-right: 26px solid #CCCCCC;
            	  }
            
            	  .message li p time:nth-child(odd), .message li p time:nth-child(even)
            	  {
            	  display:block;
            	  padding-top:1em;
            	  }
            
            
            
            
            /**********************Fin cadre centrer**************************************/
            /**********************début cadre droite**************************************/
            
            
            /**********************Fin cadre droite**************************************/
            
            
            /*********************************************************************************************************Fin messagerie****************************************************************************************************************************************/
            

            ca donne fait

            donc tu me conseil de metre sur chaque balise <ol>une class ca sera mieux

            si ce le cas je vais retenter de le refaire et je verais ou ca coince

            tu me diras si le code html est bon ou il faut modifier un petit truc

            merci



            • Partager sur Facebook
            • Partager sur Twitter
              10 juin 2017 à 14:57:16

              D'une part, je parlais de mettre une classe sur chaque message, donc les li, pas le ol…

              Ensuite, as-tu lu ma première phrase ?

              > pour la couleur c'est que tu cibles le span:nth-child à l'intérieur des li et pas les li eux-mêmes, contrairement à ce que tu fais pour les alignements.

              • Partager sur Facebook
              • Partager sur Twitter

              Pas d'aide concernant le code par MP, le forum est là pour ça :)

                10 juin 2017 à 21:00:30

                re

                voilà le html

                	  <ol>
                	  <li class="message"><span class="avatar-messagerie-homme" title="avatar homme"></span><p>message</p><time datetime="2012-02">février 2012</time></li>
                	  <li class="message"><span class="avatar-messagerie-homme" title="avatar homme"></span><p>message</p><time datetime="2012-02">février 2012</time></li>
                	  </ol>
                
                      .message
                	  {
                	  border-bottom:1px solid #CCCCCC;
                	  width:100%;
                	  overflow:hidden;
                	  text-align:right;
                	  }
                	  .message span
                	  {
                	  display:flex;
                	  width:3.5em;
                	  height:3.5em;
                	  border:1px solid #CCCCCC;
                	  border-radius:50%;
                	  margin:1em;
                	  float:right;
                	  }
                	  .message p
                	  {
                	  background-color:red;
                	  padding:1em;
                	  position: relative;
                	  -moz-border-radius:10px;
                	  border:1px solid #CCCCCC;
                	  -webkit-border-radius:10px;
                	  border-radius:10px;
                	  width:auto;
                	  max-width:35em;
                	  margin:0;
                	  display:inline-block;
                	   margin-top:1em;
                	   margin-right:3em;
                	  }
                
                	  .message p:before
                	  {
                	   content:"";
                	   position: absolute;
                	   left:100%;
                	   top: 0.5em;
                	   width: 0;
                	   height: 0;
                	   border-top: 13px solid transparent;
                	   border-left: 26px solid red;
                	   border-bottom: 13px solid transparent;
                	   }
                	  .message time
                	  {
                	  display:block;
                	  margin-right:9em;
                	  margin-top:1em;
                	  margin-bottom:1em;
                	  }
                

                j'ai mis les 2 lignes à droite donc c'est ok

                mais où il faut placé correctement even et odd afin qu'il ne se plante pas pour la couleur et le before 

                ne dit pas qu'il faut changer la classe tout les 2 lignes pour avoir une ligne rouge et une ligne verte 

                je dirais à quoi sert even et odd si ce cas la ca ne sert à rien ;)

                c'est pour ca qu'il faut mettre une classe dans ol pour changer la couleur etc.. sur les li

                merci de ton aide 

                • Partager sur Facebook
                • Partager sur Twitter
                  10 juin 2017 à 21:40:29

                  Il faut que tu fasses ".message:nth-child(odd)" et ".message:nth-child(even)".

                  • Partager sur Facebook
                  • Partager sur Twitter

                  Pas d'aide concernant le code par MP, le forum est là pour ça :)

                    10 juin 2017 à 22:30:47

                    j'ai compris mais si je te met ceux que j'ai tester depuis 72 h

                    css 

                             .message:nth-child(odd)
                    	  {
                    	  border-bottom:1px solid #CCCCCC;
                    	  width:100%;
                    	  overflow:hidden;
                    	  text-align:right;
                    	  }
                          .message:nth-child(even)
                    	  {
                    	  border-bottom:1px solid #CCCCCC;
                    	  width:100%;
                    	  overflow:hidden;
                    	  text-align:left;
                    	  }
                    	  .message p:nth-child(odd)
                    	  {
                    	  background-color:red;
                    	  padding:1em;
                    	  position: relative;
                    	  -moz-border-radius:10px;
                    	  border:1px solid #CCCCCC;
                    	  -webkit-border-radius:10px;
                    	  border-radius:10px;
                    	  width:auto;
                    	  max-width:35em;
                    	  margin:0;
                    	  display:inline-block;
                    	   margin-top:1em;
                    	   margin-right:3em;
                    	  }
                    	  .message p:nth-child(even)
                    	  {
                    	  background-color:#999999;
                    	  padding:1em;
                    	  position: relative;
                    	  -moz-border-radius:10px;
                    	  border:1px solid #CCCCCC;
                    	  -webkit-border-radius:10px;
                    	  border-radius:10px;
                    	  width:auto;
                    	  max-width:35em;
                    	  margin:0;
                    	  display:inline-block;
                    	   margin-top:1em;
                    	   margin-right:3em;
                    	  }
                    
                    	  .message span:nth-child(odd)
                    	  {
                    	  display:flex;
                    	  width:3.5em;
                    	  height:3.5em;
                    	  border:1px solid #CCCCCC;
                    	  border-radius:50%;
                    	  margin:1em;
                    	  float:right;
                    	  }
                    
                    	  .message span:nth-child(even)
                    	  {
                    	  display:flex;
                    	  width:3.5em;
                    	  height:3.5em;
                    	  border:1px solid #CCCCCC;
                    	  border-radius:50%;
                    	  margin:1em;
                    	  float:left;
                    	  }
                    
                    
                    

                    là il met bien à gauche et droite

                    mais le span avatar il ne comprend pas car il prend celle(odd)

                    et le p pour les message il prend celle even

                    pour la class before je n'ai pas mis encore sinon ca va se planter

                    as tu une idée 

                    merci

                    • Partager sur Facebook
                    • Partager sur Twitter
                      10 juin 2017 à 22:58:55

                      Le :nth-child doit être sur .message, pas sur autre chose, attention :)
                      • Partager sur Facebook
                      • Partager sur Twitter

                      Pas d'aide concernant le code par MP, le forum est là pour ça :)

                        11 juin 2017 à 1:48:32

                        j'ai manger un peut je rigoles

                        mais j'ai fait avant lire ton message ;)

                        mais je crois avoir trouver sauf un petit detail mais rien de grave c'est sur la balise p il y a un petit marging top en trop je vois ou ca bug car il y a moyen espace blanc en trop donc il faut que je trouves quelle class c'est 

                        sinon voilà le résultat tu me diras si c'est bon et je laisse come ça ou il faut que je change un truc par quoi

                        	  <ol>
                        	  <li class="message"><p>dddddddddddddddddddddddd fffffffffffffff</p><span class="avatar-messagerie-homme" title="avatar homme"></span><time datetime="2012-02">février 2012</time></li>
                        	  <li class="message"><span class="avatar-messagerie-homme" title="avatar homme"></span><p>texte</p><time datetime="2012-02">février 2012</time></li>
                        	  </ol>
                        
                              .message:nth-child(odd)
                        	  {
                        	  width:100%;
                        	  overflow:hidden;
                        	  text-align:right;
                        	  }
                              .message:nth-child(even)
                        	  {
                        	  width:100%;
                        	  overflow:hidden;
                        	  text-align:left;
                        	  }
                        
                        	  .message span
                        	  {
                        	  width:3.5em;
                        	  height:3.5em;
                        	  border:1px solid #CCCCCC;
                        	  border-radius:50%;
                        	  margin:1em;
                        	  display:inline-flex;
                        	  }
                        
                        	  .message p
                        	  {
                        	  padding:1em;
                        	  position: relative;
                        	  -moz-border-radius:10px;
                        	  border:1px solid #CCCCCC;
                        	  -webkit-border-radius:10px;
                        	  border-radius:10px;
                        	  width:auto;
                        	  max-width:35em;
                        	  margin:0;
                        	  display:inline-block;
                        	   margin-top:1em;
                        	   margin-right:3em;
                        	   margin-left:3em;
                        	  }
                        
                        
                        	  .message p:before
                        	  {
                        	   content:"";
                        	   position: absolute;
                        	   top: 0.5em;
                        	   width: 0;
                        	   height: 0;
                        	   border-top: 13px solid transparent;
                        	   border-bottom: 13px solid transparent;
                        	   }
                        
                        	  .message p:nth-child(odd):before
                        	  {
                        	   border-left: 26px solid #eef0f5;
                        	   left:100%;
                        	  }
                        	  .message p:nth-child(even):before
                        	  {
                        	   border-right: 26px solid #4ccbf8;
                        	   right:100%;
                        	  }
                        
                        
                        	  .message p:nth-child(odd)
                        	  {
                        	  background-color:#eef0f5;
                        	  }
                        	  .message p:nth-child(even)
                        	  {
                        	  background-color:#4ccbf8;
                        	  }
                        	  .message time
                        	  {
                        	  display:block;
                        	  margin-right:9em;
                        	  margin-left:9em;
                        	  padding-bottom:1em;
                        	  padding-top:1em;
                        	  }
                        

                        tu me diras si je dois modifier ou sic'est bon 

                        merci


                        -
                        Edité par will.smith 11 juin 2017 à 1:50:03

                        • Partager sur Facebook
                        • Partager sur Twitter
                          11 juin 2017 à 6:51:04

                          Tu as laissé des "p:nth-child" : ne mets ce sélecteur que sur ".message".

                          Et pour l'espacement, ajoute "vertical-align: top" sur ".message p".

                          • Partager sur Facebook
                          • Partager sur Twitter

                          Pas d'aide concernant le code par MP, le forum est là pour ça :)

                            11 juin 2017 à 11:14:15

                            si je suprime p:nth-child sur ces class

                            	  .message p:nth-child(odd):before
                            	  {
                            	   border-left: 26px solid #eef0f5;
                            	   left:100%;
                            	  }
                            	  .message p:nth-child(even):before
                            	  {
                            	   border-right: 26px solid #4ccbf8;
                            	   right:100%;
                            	  }
                            
                            	  .message p:nth-child(odd)
                            	  {
                            	  background-color:#eef0f5;
                            	  }
                            	  .message p:nth-child(even)
                            	  {
                            	  background-color:#4ccbf8;
                            	  }
                            

                            il ne veut pas mettre la couleur et la flèche  du bon côté donc j’étais obligé de le laissé 


                            • Partager sur Facebook
                            • Partager sur Twitter
                              11 juin 2017 à 11:31:05

                              Et si tu mets ".message:nth-child(odd) p", ça cible pas ce que tu veux ?
                              • Partager sur Facebook
                              • Partager sur Twitter

                              Pas d'aide concernant le code par MP, le forum est là pour ça :)

                                11 juin 2017 à 11:37:42

                                j'ai tester ca ne veut pas cibler donc je penses que je vais laisser comme j'ai fais

                                pas le choix

                                si tu veux voir 

                                https://fiddle.jshell.net/1jgp0aqj/

                                tu me diras si on est oligé ou pas de mettre chil

                                merci

                                -
                                Edité par will.smith 11 juin 2017 à 12:29:06

                                • Partager sur Facebook
                                • Partager sur Twitter
                                  11 juin 2017 à 13:45:36

                                  J'ai mis à jour ton code sur JSFiddle (dans une nouvelle page) : https://fiddle.jshell.net/1jgp0aqj/2/ en utilisant ".message:nth-child(odd) p" et pas ".message p:nth-child(odd)", ça marche pour moi. Tu confirmes ?

                                  Notons que les messages alignés à droite commencent par un paragraphe mais pas ceux alignés à gauche, c'est pour ça que mettre le nth-child sur p marche aussi, mais c'est une coïncidence. Tu auras tout intérêt à avoir exactement la même structure html pour tous tes messages et changer l'ordre de l'avatar en CSS, par exemple avec "display: flex" sur le message, et "order: 1" sur l'avatar.

                                  • Partager sur Facebook
                                  • Partager sur Twitter

                                  Pas d'aide concernant le code par MP, le forum est là pour ça :)

                                    11 juin 2017 à 16:13:45

                                    j'ai refait la page en metant une class à chaque li

                                    et le html

                                    	  <!--Début de la boîte Messagerie-->
                                    	  <div class="messagerie">
                                    
                                    	  <!--Début aside-->
                                    	  <aside>
                                    
                                    	  <ol>
                                    	  <li class="contact"><span class="avatar-messagerie-homme" title="avatar homme"></span><span>pseudo</span><time datetime="2012-02">février 2012</time><p>Bonjours, je me presentes ... </p><span class="icon-mp-lu" title="lu">Lu</span></li>
                                    	  <li class="contact"><span class="avatar-messagerie-homme" title="avatar homme"></span><span>pseudo</span><time datetime="2012-02">février 2012</time><p>Bonjours, je me presentes ... </p><span class="icon-mp-lu" title="lu">Lu</span></li>
                                    	  <li class="contact"><span class="avatar-messagerie-homme" title="avatar homme"></span><span>pseudo</span><time datetime="2012-02">février 2012</time><p>Bonjours, je me presentes ... </p><span class="icon-mp-lu" title="lu">Lu</span></li>
                                    	  <li class="contact"><span class="avatar-messagerie-homme" title="avatar homme"></span><span>pseudo</span><time datetime="2012-02">février 2012</time><p>Bonjours, je me presentes ... </p><span class="icon-mp-lu" title="lu">Lu</span></li>
                                    	  <li class="contact"><span class="avatar-messagerie-homme" title="avatar homme"></span><span>pseudo</span><time datetime="2012-02">février 2012</time><p>Bonjours, je me presentes ... </p><span class="icon-mp-lu" title="lu">Lu</span></li>
                                    	  <li class="contact"><span class="avatar-messagerie-homme" title="avatar homme"></span><span>pseudo</span><time datetime="2012-02">février 2012</time><p>Bonjours, je me presentes ... </p><span class="icon-mp-lu" title="lu">Lu</span></li>
                                    	  <li class="contact"><span class="avatar-messagerie-homme" title="avatar homme"></span><span>pseudo</span><time datetime="2012-02">février 2012</time><p>Bonjours, je me presentes ... </p><span class="icon-mp-lu" title="lu">Lu</span></li>
                                    	  <li class="contact"><span class="avatar-messagerie-homme" title="avatar homme"></span><span>pseudo</span><time datetime="2012-02">février 2012</time><p>Bonjours, je me presentes ... </p><span class="icon-mp-lu" title="lu">Lu</span></li>
                                    	  <li class="contact"><span class="avatar-messagerie-homme" title="avatar homme"></span><span>pseudo</span><time datetime="2012-02">février 2012</time><p>Bonjours, je me presentes ... </p><span class="icon-mp-lu" title="lu">Lu</span></li>
                                    	  <li class="contact"><span class="avatar-messagerie-homme" title="avatar homme"></span><span>pseudo</span><time datetime="2012-02">février 2012</time><p>Bonjours, je me presentes ... </p><span class="icon-mp-lu" title="lu">Lu</span></li>
                                    	  <li class="contact"><span class="avatar-messagerie-homme" title="avatar homme"></span><span>pseudo</span><time datetime="2012-02">février 2012</time><p>Bonjours, je me presentes ... </p><span class="icon-mp-lu" title="lu">Lu</span></li>
                                    	  <li class="contact"><span class="avatar-messagerie-homme" title="avatar homme"></span><span>pseudo</span><time datetime="2012-02">février 2012</time><p>Bonjours, je me presentes ... </p><span class="icon-mp-lu" title="lu">Lu</span></li>
                                    	  <li class="contact"><span class="avatar-messagerie-homme" title="avatar homme"></span><span>pseudo</span><time datetime="2012-02">février 2012</time><p>Bonjours, je me presentes ... </p><span class="icon-mp-lu" title="lu">Lu</span></li>
                                    	  <li class="contact"><span class="avatar-messagerie-homme" title="avatar homme"></span><span>pseudo</span><time datetime="2012-02">février 2012</time><p>Bonjours, je me presentes ... </p><span class="icon-mp-lu" title="lu">Lu</span></li>
                                    	  <li class="contact"><span class="avatar-messagerie-homme" title="avatar homme"></span><span>pseudo</span><time datetime="2012-02">février 2012</time><p>Bonjours, je me presentes ... </p><span class="icon-mp-lu" title="lu">Lu</span></li>
                                    	  <li class="contact"><span class="avatar-messagerie-homme" title="avatar homme"></span><span>pseudo</span><time datetime="2012-02">février 2012</time><p>Bonjours, je me presentes ... </p><span class="icon-mp-lu" title="lu">Lu</span></li>
                                    	  </ol>
                                    
                                    	  </aside>
                                    	  <!--Fin aside-->
                                    	  <!--Début du contenu-->
                                    	  <div>
                                    	  
                                    	  <ol class="fenetre">
                                    	  <li class="message"><p>dddddddddddddddddddddddd fffffffffffffff</p><span class="avatar-messagerie-homme" title="avatar homme"></span><time datetime="2012-02">février 2012</time></li>
                                    	  <li class="message"><span class="avatar-messagerie-homme" title="avatar homme"></span><p>texte</p><time datetime="2012-02">février 2012</time></li>
                                    	  <li class="message"><p>dddddddddddddddddddddddd fffffffffffffff</p><span class="avatar-messagerie-homme" title="avatar homme"></span><time datetime="2012-02">février 2012</time></li>
                                    	  <li class="message"><span class="avatar-messagerie-homme" title="avatar homme"></span><p>texte</p><time datetime="2012-02">février 2012</time></li>
                                    	  <li class="message"><p>dddddddddddddddddddddddd fffffffffffffff</p><span class="avatar-messagerie-homme" title="avatar homme"></span><time datetime="2012-02">février 2012</time></li>
                                    	  <li class="message"><span class="avatar-messagerie-homme" title="avatar homme"></span><p>texte</p><time datetime="2012-02">février 2012</time></li>
                                    	  <li class="message"><p>dddddddddddddddddddddddd fffffffffffffff</p><span class="avatar-messagerie-homme" title="avatar homme"></span><time datetime="2012-02">février 2012</time></li>
                                    	  <li class="message"><span class="avatar-messagerie-homme" title="avatar homme"></span><p>texte</p><time datetime="2012-02">février 2012</time></li>
                                    	  </ol>
                                    	  <textarea title="message" placeholder="Pour quoi ne pas parler" name="message" id="message"></textarea>
                                    	  </div>
                                    	  <!--Fin du contenu<time datetime="2012-02">février 2012</time>-->
                                    	  <!--Début aside-->
                                    	  <aside class="profil">
                                    	  
                                    	  <span class="avatar-messagerie-homme" title="avatar homme"></span>
                                    	  <dl>
                                    	  <dt>inscription le :</dt><dd><time datetime="2012-02">février 2012</time></dd>
                                    	  <dt>groupe :</dt><dd>Admin</dd>
                                    	  <dt>prénom :</dt><dd>ivan</dd>
                                    	  <dt>bonnus :</dt><dd>100</dd>
                                    	  <dt>âge :</dt><dd>50 Ans</dd>
                                    	  <dt>ville :</dt><dd>Paris</dd>
                                    	  <dt>messages :</dt><dd>50</dd>
                                    	  </dl>
                                    
                                    	  </aside>
                                    	  <!--Fin aside-->
                                    	  </div>  
                                    	  <!--Fin de la boîte Messagerie-->
                                    

                                    et le css

                                    /*********************************************************************************************************Début messagerie****************************************************************************************************************************************/
                                         .messagerie
                                          {
                                          overflow:hidden;
                                          height: calc(100% - 16em);
                                          }
                                     
                                          .messagerie aside
                                          {
                                          float: left;
                                          width: 30em;
                                          border: 1px solid #CCCCCC;
                                          height: calc(100% - 0em);
                                          overflow-y:auto;
                                          }
                                     
                                          .messagerie div
                                          {
                                          float: left;
                                          margin-left: 1em;
                                          margin-right: 1em;
                                          width:84.6em;
                                          border: 1px solid #CCCCCC;
                                          height: calc(100% - 0em);
                                          overflow-y:auto;
                                          }
                                    /**********************début cadre gauche**************************************/
                                    
                                          .contact
                                    	  {
                                    	  overflow:hidden;
                                          border-bottom:1px solid #CCCCCC;
                                    	  }
                                    
                                    	  .contact span:nth-child(1)
                                    	  {
                                    	  width:3.5em;
                                    	  height:3.5em;
                                    	  border:1px solid #CCCCCC;
                                    	  border-radius:50%;
                                    	  margin:1em;
                                    	  display:inline-flex;
                                    	  float:left;
                                    	  }
                                    
                                    	  .contact span:nth-child(2)
                                    	  {
                                    	  display:inline-flex;
                                    	  padding-top:1em;
                                    
                                    	  }
                                    
                                    	  .contact time
                                    	  {
                                    	  padding:1em;
                                    	  float:right;
                                    	  }
                                    	  .contact p
                                    	  {
                                    	  margin-right:7em;
                                    	  float:left;
                                    	  margin-top:auto;
                                    
                                    	  }
                                    	  .contact span
                                    	  {
                                    	  float:left;
                                    
                                    	  }
                                    /**********************Fin cadre gauche**************************************/
                                    /**********************début cadre centrer**************************************/
                                         .messagerie textarea
                                          {
                                    	  width:100%;
                                    	  height:5.5em;
                                    	  border:0;
                                    	  padding:1em;
                                          }
                                          .fenetre
                                    	  {
                                    	  height: calc(100% - 6em);
                                    	  border-bottom:1px solid #CCCCCC;
                                    	  overflow:auto;
                                    	  }
                                         .message:nth-child(odd)
                                    	  {
                                    	  width:100%;
                                    	  overflow:hidden;
                                    	  text-align:right;
                                    	  }
                                          .message:nth-child(even)
                                    	  {
                                    	  width:100%;
                                    	  overflow:hidden;
                                    	  text-align:left;
                                    	  }
                                    
                                    	  .message span
                                    	  {
                                    	  order:1;
                                    	  width:3.5em;
                                    	  height:3.5em;
                                    	  border:1px solid #CCCCCC;
                                    	  border-radius:50%;
                                    	  margin:1em;
                                    	  display:inline-flex;
                                    	  }
                                    
                                    	  .message p
                                    	  {
                                    	  padding:1em;
                                    	  position: relative;
                                    	  -moz-border-radius:10px;
                                    	  border:1px solid #CCCCCC;
                                    	  -webkit-border-radius:10px;
                                    	  border-radius:10px;
                                    	  width:auto;
                                    	  max-width:35em;
                                    	  margin:0;
                                    	  display:inline-block;
                                    	  margin-top:1em;
                                    	  margin-right:3em;
                                    	  margin-left:3em;
                                    	  vertical-align:top;
                                    	  }
                                    
                                    	  .message p:before
                                    	  {
                                    	   content:"";
                                    	   position: absolute;
                                    	   top: 0.5em;
                                    	   width: 0;
                                    	   height: 0;
                                    	   border-top: 13px solid transparent;
                                    	   border-bottom: 13px solid transparent;
                                    	   }
                                    	   
                                    	   .message:nth-child(odd) p:before
                                    	   {
                                    	   border-left: 26px solid #eef0f5;
                                    	   left:100%;
                                    	   }
                                    	   
                                    	   .message:nth-child(even) p:before
                                    	   {
                                    	   border-right: 26px solid #4ccbf8;
                                    	   right:100%;
                                    	   }
                                    	   
                                    	   .message:nth-child(odd) p
                                    	   {
                                    	   background-color:#eef0f5;
                                    	   }
                                    	   
                                    	   .message:nth-child(even) p
                                    	   {
                                    	   background-color:#4ccbf8;
                                    	   }
                                    
                                    	  .message time
                                    	  {
                                    	  display:block;
                                    	  margin-right:9em;
                                    	  margin-left:9em;
                                    	  }
                                    
                                    /**********************Fin cadre centrer**************************************/
                                    /**********************début cadre droite**************************************/
                                    	  .profil span
                                    	  {
                                    	  width:8em;
                                    	  height:8em;
                                    	  border:1px solid #CCCCCC;
                                    	  margin:1em auto;
                                    	  display:block;
                                    	  }
                                    	  .profil dl
                                    	  {
                                    	  margin:2em 6em;
                                    	  display:block;
                                    	  }
                                    
                                    	  .profil dt
                                    	  {
                                    	  float:left;
                                    	  width:10em;
                                    	  margin-bottom:0.5em;
                                    	  }
                                    
                                    	  .profil dd
                                    	  {
                                    	  margin-bottom:0.5em;
                                    	  }
                                    /**********************Fin cadre droite**************************************/
                                    /*********************************************************************************************************Fin messagerie****************************************************************************************************************************************/
                                    

                                    je n'ai pas mis order sur avatar car ca plante 

                                    donc tu voit j'ai refait la colone droite et j'ai mis une class à chaque li comme tu m'as dit car apparemment c'est mieux (donc je vais refaire la même chose pour les pages forum)

                                    pour la collone droite j'ai mis une class à mon aside pour affiché le profil

                                    j'ai rajouté un texterea pour écrire un message (tu me dit pour quoi metre un texterea et pas un input je veux bien t'expliqué mais ca sera trop long )

                                    à mon avis c'est parfait tu me diras si c'est bon ou il faut modifier un truc

                                    maintenant il faut que je remet oder 1 sur le span avatar sans que ca bug à causse le display: flex etc..

                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      13 juin 2017 à 14:34:31

                                      bonjours, j'ai mis oder 1 a mon span avatar

                                      	  .message span
                                      	  {
                                      	  order:1;
                                      	  width:3.5em;
                                      	  height:3.5em;
                                      	  border:1px solid #CCCCCC;
                                      	  border-radius:50%;
                                      	  margin:1em;
                                      	  display:inline-flex;
                                      	  }
                                      

                                      si je met un display:flex; à mon message il se plante 

                                      merci de ton aide

                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                        13 juin 2017 à 15:45:47

                                        "Il se plante" ça ne veut rien dire… Tu peux montrer le résultat ? (en ligne de préférence)
                                        • Partager sur Facebook
                                        • Partager sur Twitter

                                        Pas d'aide concernant le code par MP, le forum est là pour ça :)

                                          14 juin 2017 à 9:13:06

                                          j'ai réfléchis cette nuit car il y à truc qui me chagrine sur ta phrase

                                          quand ta 2 colonnes : il faut mettre float left et right

                                          et à partir de 3 colonnes là on peut mettre display flex avec order 

                                          comment tu veux mettre un display flex sur message avec order1 sur span hors j'ai 2 colonnes

                                          à moins que tu triche sur un code dans cette condition je m'incline et il faut m'expliquer pour mettre order 1 sur 2 colonnes

                                          merci

                                          • Partager sur Facebook
                                          • Partager sur Twitter
                                            14 juin 2017 à 10:33:25

                                            Honnêtement j'ai rien compris.

                                            On peut tout à fait utiliser flex sur deux colonnes, et ça n'a rien à voir avec float.

                                            Je me répète : 

                                            > "Il se plante" ça ne veut rien dire… Tu peux montrer le résultat ? (en ligne de préférence)

                                            • Partager sur Facebook
                                            • Partager sur Twitter

                                            Pas d'aide concernant le code par MP, le forum est là pour ça :)

                                              15 juin 2017 à 12:34:19

                                              j'ai refais ca marche sauf pour une ligne (malgré que je ne suis pas convaincue avec le display flex

                                              	  <li class="message"><p>dddddddddddddddddddddddd fffffffffffffff</p><span class="icon-avatar-messagerie-conversation-homme" title="avatar homme"></span><time datetime="2012-02">février 2012</time></li>
                                              	  <li class="message"><span class="icon-avatar-messagerie-conversation-homme" title="avatar homme"></span><p>dddddddddddddddddddddddd fffffffffffffff</p><time datetime="2012-02">février 2012</time></li>
                                              
                                                    .message:nth-child(odd)
                                              	  {
                                              	  width:100%;
                                              	  overflow:hidden;
                                              	  text-align:right;
                                              	  }
                                                    .message:nth-child(even)
                                              	  {
                                              	  width:100%;
                                              	  overflow:hidden;
                                              	  text-align:left;
                                              	  display:flex;
                                              	  }
                                              
                                              	  .message span
                                              	  {
                                              	  order:1;
                                              	  width:3.5em;
                                              	  height:3.5em;
                                              	  border:1px solid #CCCCCC;
                                              	  border-radius:50%;
                                              	  margin:1em;
                                              	  display:inline-block;
                                              	  text-align:center;
                                              	  }
                                              	  .message p
                                              	  {
                                              	  order:1;
                                              	  padding:1em;
                                              	  position: relative;
                                              	  -moz-border-radius:10px;
                                              	  border:1px solid #CCCCCC;
                                              	  -webkit-border-radius:10px;
                                              	  border-radius:10px;
                                              	  width:auto;
                                              	  max-width:35em;
                                              	  margin:0;
                                              	  display:inline-block;
                                              	  margin-top:1em;
                                              	  margin-right:3em;
                                              	  margin-left:3em;
                                              	  vertical-align:top;
                                              	  }
                                              
                                              
                                              	  .message p:before
                                              	  {
                                              	   content:"";
                                              	   position: absolute;
                                              	   top: 0.5em;
                                              	   width: 0;
                                              	   height: 0;
                                              	   border-top: 13px solid transparent;
                                              	   border-bottom: 13px solid transparent;
                                              	   }
                                              	   
                                              	   .message:nth-child(odd) p:before
                                              	   {
                                              	   border-left: 26px solid #eef0f5;
                                              	   left:100%;
                                              	   }
                                              	   
                                              	   .message:nth-child(even) p:before
                                              	   {
                                              	   border-right: 26px solid #4ccbf8;
                                              	   right:100%;
                                              	   }
                                              	   
                                              	   .message:nth-child(odd) p
                                              	   {
                                              	   background-color:#eef0f5;
                                              	   }
                                              	   
                                              	   .message:nth-child(even) p
                                              	   {
                                              	   background-color:#4ccbf8;
                                              	   }
                                              
                                              	  .message time
                                              	  {
                                              	  display:block;
                                              	  margin-right:9em;
                                              	  margin-left:9em;
                                              	  }
                                              



                                              chil odd je n'ai pas mis un display:flex; là c'est bon (par contre on ne peut pas changer l'ordre avec order 1

                                              child(even) là j'ai ms display:flex; là on peut changer l'ordre avec order 1 là on est ok mais par contre la date time ne se met pas en sous (mais par contre si j'enleve display:flex) là tout est est bon mais par contre on ne pourra pas changer l'ordre 

                                              donc c'est pour ca je ne trouves pas comment veut tu mettre un display:flex sur 2 colonne (avec time qui a un display:block;) 

                                              à mon avis il faut joué avec display:flex;  et display:block;

                                              • Partager sur Facebook
                                              • Partager sur Twitter
                                                15 juin 2017 à 13:25:43

                                                Je te propose une version simplifiée, parce que je vois que je n'arrive pas à me faire comprendre :) : https://codepen.io/anon/pen/YQpyOB?editors=1100#0

                                                Là, on a des messages avec un html identique (en structure), et côté CSS ils sont en display: flex, avec deux différences uniquement pour les nth-child(even), le text-align et l'order pour l'avatar.

                                                Est-ce que ça correspond à ce que tu cherches à faire ?

                                                • Partager sur Facebook
                                                • Partager sur Twitter

                                                Pas d'aide concernant le code par MP, le forum est là pour ça :)

                                                  16 juin 2017 à 0:47:26

                                                  oui et non 

                                                  voilà la capture que j'optiens et j'aimerais avoir 

                                                  html

                                                  	  <div class="messagerie-conversation">
                                                  	  
                                                  	  <ol class="fenetre">
                                                  	  <li class="message"><p>dddddddddddddddddddddddd fffffffffffffff</p><span class="icon-avatar-messagerie-conversation-homme" title="avatar homme"></span><time datetime="2012-02">février 2012</time></li>
                                                  	  <li class="message"><span class="icon-avatar-messagerie-conversation-homme" title="avatar homme"></span><p>dddddddddddddddddddddddd fffffffffffffff</p><time datetime="2012-02">février 2012</time></li>
                                                  	  </ol>
                                                  	  <textarea title="message" placeholder="Pour quoi ne pas parler de ce qui vous plaît chez Pseudo" name="message" id="message"></textarea>
                                                  	  </div>
                                                  

                                                  et le css

                                                        .fenetre
                                                  	  {
                                                  	  height: calc(100% - 6em);
                                                  	  border-bottom:1px solid #CCCCCC;
                                                  	  overflow:auto;
                                                  	  }
                                                  
                                                        .message:nth-child(odd)
                                                  	  {
                                                  	  width:100%;
                                                  	  overflow:hidden;
                                                  	  text-align:right;
                                                  	  }
                                                        .message:nth-child(even)
                                                  	  {
                                                  	  width:100%;
                                                  	  overflow:hidden;
                                                  	  text-align:left;
                                                  	  }
                                                  
                                                  	  .message span
                                                  	  {
                                                  	  width:3.5em;
                                                  	  height:3.5em;
                                                  	  border:1px solid #CCCCCC;
                                                  	  border-radius:50%;
                                                  	  margin:1em;
                                                  	  display:inline-block;
                                                  	  text-align:center;
                                                  	  }
                                                  	  .message p
                                                  	  {
                                                  	  padding:1em;
                                                  	  position: relative;
                                                  	  -moz-border-radius:10px;
                                                  	  border:1px solid #CCCCCC;
                                                  	  -webkit-border-radius:10px;
                                                  	  border-radius:10px;
                                                  	  width:auto;
                                                  	  max-width:35em;
                                                  	  margin:0;
                                                  	  display:inline-block;
                                                  	  margin-top:1em;
                                                  	  margin-right:3em;
                                                  	  margin-left:3em;
                                                  	  vertical-align:top;
                                                  	  }
                                                  
                                                  
                                                  	  .message p:before
                                                  	  {
                                                  	   content:"";
                                                  	   position: absolute;
                                                  	   top: 0.5em;
                                                  	   width: 0;
                                                  	   height: 0;
                                                  	   border-top: 13px solid transparent;
                                                  	   border-bottom: 13px solid transparent;
                                                  	   }
                                                  	   
                                                  	   .message:nth-child(odd) p:before
                                                  	   {
                                                  	   border-left: 26px solid #eef0f5;
                                                  	   left:100%;
                                                  	   }
                                                  	   
                                                  	   .message:nth-child(even) p:before
                                                  	   {
                                                  	   border-right: 26px solid #4ccbf8;
                                                  	   right:100%;
                                                  	   }
                                                  	   
                                                  	   .message:nth-child(odd) p
                                                  	   {
                                                  	   background-color:#eef0f5;
                                                  	   }
                                                  	   
                                                  	   .message:nth-child(even) p
                                                  	   {
                                                  	   background-color:#4ccbf8;
                                                  	   }
                                                  
                                                  	  .message time
                                                  	  {
                                                  	  display:block;
                                                  	  margin-right:9em;
                                                  	  margin-left:9em;
                                                  	  }
                                                  	  
                                                  	  .messagerie textarea
                                                        {
                                                  	  width:100%;
                                                  	  height:5.5em;
                                                  	  border:0;
                                                  	  padding:1em;
                                                        }
                                                  


                                                  l'avatar à droite et gauche (ok)

                                                  le texte des message (j'ai mis width:auto; pour permettre de réduire le cadre en fonction du texte avec une limite max-width:35em; pour ne pas allez jusqu'au bout et ca va s’arrêter normale à 35em in challa)

                                                  avec un cadre avec 2 couleurs différent grâce avec odd et even et j'ai mis une flèche droite et gauche selon l'orientation des avatars 

                                                  et la date se trouve en sous du cadre message et tu vois j'ai un peut triché avec margin-right:9em; margin-left:9em;
                                                  moi perso, je laisse comme ca car je comprendrais un peut et si par hazzard je doi change l'ordre des message 
                                                  la premier ligne qui est à droite je veux mettre à gauche etc..
                                                  je changerais manuellement au lieu de mettre order 1 et order 2 

                                                  peut être vous allez trouver long le css mais en moi je me retrouve facilement ;)



                                                  • Partager sur Facebook
                                                  • Partager sur Twitter
                                                    17 juin 2017 à 21:50:03

                                                    bonjours,

                                                    excuse moi de revenir mais 

                                                    https://fiddle.jshell.net/scsm0s72/

                                                    j'ai tester de mettr 2 couleurs different mais il reste bloquer sur .message-texte:nth-child(odd)

                                                    et pour le before lsur la 1 er ligne c'est bon il se met bien à droite du cadre 

                                                    mais sur la 2 ligne j'arrives pas à le mettre à gauche

                                                    et pour la longueur j'aimerais mettre widht auto qu'il s'arete au dernier message mais avec une limite

                                                    width:auto;
                                                    max-width:35em;
                                                    en attendant ta réponse je vais re tenter de l refare pour voir 

                                                    merci

                                                    • Partager sur Facebook
                                                    • Partager sur Twitter

                                                    child odd et even

                                                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                                    • Editeur
                                                    • Markdown