Partage
  • Partager sur Facebook
  • Partager sur Twitter

Superposer des blocs

Sujet résolu
    6 janvier 2006 à 15:38:52

    Bonjour, :)

    Y'aurait il la possibilité de superposer 2 blocs autrement qu'avec l'attribut "position:absolute"?


    Ceci afin de mettre le menu de mon site sur la bannière. cf (lien)
    ^^ Précision :
    Celle ci est en plusieurs parties, donc je ne peux pas imbriquer des 'div'.
    • Partager sur Facebook
    • Partager sur Twitter
      6 janvier 2006 à 15:44:44

      qu'est-ce qui t'empeche de le mettre dans entete3 ?
      • Partager sur Facebook
      • Partager sur Twitter
        6 janvier 2006 à 16:01:00

        'entete3' est la barre de menu jaune en bas de l'en-tête.

        'entete1' est la photo à gauche. (Mon chien ^^ )
        Il pose ses pattes sur la barre de menu, c'est un effet que je recherche.

        Mais cela me bouffe une partie de la barre. Ce que je ne veux pas. Vu que je souhaite que mon menu soit étalé sur toute la barre. :p

        ...

        Ou alors il y aurait une autre possibilité, mettre la photo de mon chien en transparent. Mais la je me heurte au même probleme, comment passer au dessus de la barre. :(
        • Partager sur Facebook
        • Partager sur Twitter
          6 janvier 2006 à 16:37:38

          A ba la c'est de la maitrise de photoshop il me semble. Tu crée ta barre avec ton chien et ses petite pates. Tu place ta barre au dessus de ton chien de manière a la voir et tu réduit son opacité a 50%. Ensuite tu n'a cas découpé ton menu autour de ta pates.
          Evidement après tu remet l'opacité a 100% et tu enregistre uniquement la barre en png 24 bits.
          Il faut bien que tu comprenne la technique pour pouvoir t'amuser.
          • Partager sur Facebook
          • Partager sur Twitter
            6 janvier 2006 à 16:43:24

            Merci o_O

            Photoshop je maitrise plus que XHTML et CSS.
            La n'est pas la question voir le résultat sur le lien ^^

            Mon prob c'est quel code en XHTML je dois mettre pour placer mon chien par dessus la barre.
            Donc superposer 2 blocs ...




            EDIT 1: a j'ai compris ce que tu veux que je fasse mais ce n'est pas de la bidouille que je veux... :p
            La c'était un exemple parmis d'autre mais j'aimerais vraiment savoir comment superposer 2 blocs.

            Mais bien sûr pas en absolu, la est la contrainte. :(



            EDIT 2: Voila, autre exemple plus explicite :

            Je veux que ma barre de menu a gauche permette un sous menu déroulant qui passerait alors au dessus de mon bloc de texte.


            Image utilisateur


            Comme le fait le site http://www.geckozone.org/


            Comment faire ?
            :)

            • Partager sur Facebook
            • Partager sur Twitter
              6 janvier 2006 à 18:02:20

              A ok et bien tu fait un z-index. Dans ton css tu tape

              Citation : css

              #chienchien
              {
              z-index: 2 /* ou 2,3,4,5,...*/
              }



              La valeur de la fonction dépent de l'importance, plus ce nombres est supérieur plus il va t'afficher ton image par dessus.

              Une image avec 1 et l'autre avec 2, c'est celle de 2 qui va paser par dessus.
              Maintenant c'est a toi de switcher correctement avec le z-index
              • Partager sur Facebook
              • Partager sur Twitter
                6 janvier 2006 à 20:45:03

                OK pour le paramêtre de superposition des images ;)

                Mais dans mon CSS, comment est ce que je positionne 2 blocs (ou 2 photos) l'un sur l'autre sans être en "position:absolute"


                ...

                Edit :
                Je viens de trouver pour mettre une image à un endroit précis par rapport à un bloc 'père'. (position:relative) cf ici

                Quand je met ce code :

                #essai{
                        position:relative;
                        top:  0px;
                        left: 200px;
                       
                        width:  140px;
                        height: 186px;
                       
                        background: url("http://x1.putfile.com/9/26613021311.png") no-repeat;

                }


                C'est exactement ce qu'il me faut mais...

                Comment faire pour que ça fonctionne sur IE
                • Partager sur Facebook
                • Partager sur Twitter
                  6 janvier 2006 à 21:01:01

                  Citation : Neoshin

                  OK pour le paramêtre de superposition des images ;)

                  Mais dans mon CSS, comment est ce que je positionne 2 blocs (ou 2 photos) l'un sur l'autre sans être en "position:absolute"

                  Il n'y a pas d'autre solution que l'absolute.

                  Citation : Neoshin

                  Quand je met ce code :

                  #essai{
                          position:relative;
                          top:  0px;
                          left: 200px;
                         
                          width:  140px;
                          height: 186px;
                         
                          background: url("http://x1.putfile.com/9/26613021311.png") no-repeat;

                  }



                  C'est exactement ce qu'il me faut mais...

                  Comment faire pour que ça fonctionne sur IE

                  Bah normalement ça fonctionne avec IE, position relative pour le bloc parent et position absolute pour le bloc enfant.

                  Pourquoi ne veux-tu pas utiliser absolute ?
                  • Partager sur Facebook
                  • Partager sur Twitter
                    6 janvier 2006 à 23:36:35

                    Et bien parce que ça bug... :(

                    Si quelqu'un à une idée


                    code du parent (En-tête):
                    #entete {
                            position:relative;
                            width:  782px;
                            height: 187px;
                           
                            margin:    0px   0px  10px   0px;
                            padding:   0px   0px   0px   0px;
                           
                            border: 1px solid #000000;
                    }


                    code de l'enfant (image d'un worms):
                    #essai{
                            position:absolute;
                            top:  0px;
                            left: 200px;
                           
                            width:  140px;
                            height: 186px;
                           
                            background: url("http://x1.putfile.com/9/26613021311.png") no-repeat;
                            z-index:2;
                    }


                    Voir le résultat

                    Sous Firefox ->
                    parfait


                    Sous IE ->
                    Le worms n'apparait pas
                    l'en-tête devient déshormais fixe
                    Seul le menu et le corps de texte sont centrés quand on agrandit la fenêtre
                    • Partager sur Facebook
                    • Partager sur Twitter
                      7 janvier 2006 à 20:54:49

                      Alors, je viens de trouver pourquoi ton image en position absolute ne s'affichait pas, s...... d'IE :colere:

                      Il faut que tu utilises avant de mettre ta position absolute, un clear: both pour annuler le float de tes autres blocs, en faisant ça, ça fonctionne. ;)


                      #essai{
                        clear: both/* Pour IE annule les floats des autres blocs contenu dans #entete */
                        position: absolute;
                        top: 0;
                        left: 200px;
                        width: 140px;
                        height: 186px;
                        background: url(http://x1.putfile.com/9/26613021311.png);
                      }


                      Le z-index n'a aucune utilité.

                      Ensuite, pour ton centrage, j'ai essayé de mettre le body en position relative, mais ça fait un bug qui fait disparaître les bordures, bien entendu toujours avec IE.

                      Donc, mets tous les blocs de ta page dans un div conteneur en position absolute, avec un left: 50%, et un margin-left à -moitié de ton bloc.
                      Regardes chez alsacreations, il est indiqué comment le faire, je l'utilise et ça fonctionne impec ^^
                      • Partager sur Facebook
                      • Partager sur Twitter
                        7 janvier 2006 à 23:20:28

                        Alors ça vraiment.....
                        En plus il a fallut que dans mon code XHTML je place le bloc en dernière position pour qu'ils s'affiche au dessus des autres.
                        C'est vraiment tordu IE :colere:

                        J'ai suivi tes conseils pour le centrage des pages. Merci beaucoup ;)
                        Je suis allé sur alsacreation pour voir le cour.
                        J'ai donc fait un div global et j'utilise la méthode des marges négatives.

                        Ca fonctionne mais nouveau bug :(

                        Pourquoi mon bloc global s'agrandit quand j'agrandit la fenêtre alors qu'il est censé être fixe ? (cf ici)

                        Ca déforme mon bloc "contenu" et mon pied de page....
                        ARGGHHHH je craque. Quand j'arrange un bout, y'en a un autre qui part en live!!!! :colere2:

                        H.E.L.P.
                        • Partager sur Facebook
                        • Partager sur Twitter
                          8 janvier 2006 à 0:04:15

                          Parce que :


                          #corps {
                            margin: 0px 0px 10px 160px;
                            padding: 0px 0px 0px 0px;
                          }


                          Tu as mis un margin-left de 160px.
                          • Partager sur Facebook
                          • Partager sur Twitter
                            8 janvier 2006 à 0:19:38

                            Ben euhh oui! o_O
                            Pour décaler le corps de 160px du bord gauche du bloc global.

                            Je voix pas pourquoi le bloc s'agrandit vers la droite ! :(

                            Quand tu mets des blocs en absolutes, il faut que tu définisses tous les autres blocs aussi ?
                            • Partager sur Facebook
                            • Partager sur Twitter
                              8 janvier 2006 à 0:28:23

                              Ah oui exact.

                              Je pense avoir trouver :

                              Tu as mis :

                              #global {
                                position: absolute; /* on positionne le conteneur */
                                left: 50%;
                                width: 782; /* largeur obligatoire pour être centré */
                                margin: 20px 0 20px -391px; /* moitié de la largeur */
                                text-align: left; /* on rétablit l'alignement normal du texte */
                                border: 1px solid #000000;
                              }


                              782 quoi, choux, navets ? :p

                              • Partager sur Facebook
                              • Partager sur Twitter
                                8 janvier 2006 à 0:56:55

                                Oups! :euh:

                                Citation : strucky

                                782 quoi, choux, navets ? :p


                                Image utilisateur

                                Curieux j'ai déjà entendu ce genre de phrases :p




                                MERCI ;)
                                </span>
                                • Partager sur Facebook
                                • Partager sur Twitter

                                Superposer des blocs

                                × 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