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

HTML Discussion :

Positionnement de <div>


Sujet :

HTML

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Positionnement de <div>
    Salut,

    Je cherche à afficher deux images à des positions verticales fixes indépendament de la résolution d'écran de l'internaute. L'une sur le haut de l'écran et l'autre en bas. Je pensais pensais avoir trouvé mon bonheur en utilisant:

    <div style="position:absolute; top:10%<img src="image_haut.jpg"></div>

    et :

    <div style="position:absolute; bottom:10%<img src="image_bas.jpg"></div>

    mais malheureusement, et bien que l'alignement vertical fonctionne, je n'arrive plus à aligner ces images horizontalement au centre de l'écran tel qu'obtenu avec :

    <p style="text-align:center"><img src="image_centre.jpg"></p>

    Y a-t'il un moyen de combiner les deux, ou me suis-je échoué sur une voie qui ne mêne à rien ?

  2. #2
    Membre confirmé
    Avatar de giminik
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    303
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 303
    Points : 482
    Points
    482
    Par défaut
    je pense que tu as dû faire une erreur de copier coller dans l'énoncé de ton problème...
    sinon il faut ajouter left:50% qui va placer ton image au centre horizontalement.
    le centrage en positionnement est toujours délicat, car le point positionné est le coin supérieur gauche et non le centre de l'image...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <div style="position:absolute; top:10%; left:50%;"><img src="image_haut.jpg></div>

  3. #3
    Membre actif Avatar de Ricou13
    Inscrit en
    Août 2002
    Messages
    292
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 292
    Points : 224
    Points
    224
    Par défaut
    Salut,

    il existe plusieurs solutions selon ce que tu veux obtenir.
    pour l'image du haut, si le body a des marges à 0, tu peux tout simplement mettre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <div style="text-align:center;"><img src="flower.jpg"></div>
    Si tu dois le positionner en absolute :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <div style="border:1px solid red; text-align:center;position:absolute; top:10%; width:100%;"><img src="flower.jpg"></div>
    N'oublies pas que le fait de mettre en absolute fait sortie l'élément du flux. De fait ce qui suit sera positionné dérrière l'image.

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Merci de m'avoir répondu si vite,

    Giminik, j'avais bien essayé de mettre left:50%, mais comme tu le dis, c'est le coin suppérieur gauche qui est centré, et dans le cas de mon image le résultat n'est pas satisfaisant.

    Ricou13, t'es trop fort, j'avais bien essayé de mettre text-align:center, mais je n'avais pas mis width:100%. Du coup cela n'avait aucun effet.

    Maintenant ça marche pile poil comme je voulais et je tâcherai de me souvenir de cette grossière erreur.

    Merci à vous deux et bonne nuit.

  5. #5
    Membre actif Avatar de Ricou13
    Inscrit en
    Août 2002
    Messages
    292
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 292
    Points : 224
    Points
    224
    Par défaut
    Attention cependant. Le width: 100% n'est pas la panacé universelle.

    Sous IE, cela peut te poser des soucis si le conteneur ne fait pas 100% de la page.

    Mais, si cela te convient, un petit s'impose alors...

  6. #6
    Membre confirmé
    Avatar de giminik
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    303
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 303
    Points : 482
    Points
    482
    Par défaut
    sinon tu peux faire comme ça :
    puisque le positionnement se fait à partir du bord supérieur gauche, il faut donner une marge négative de largeur / 2.

    il faut que width soit égal à la largeur de l'image.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <div style="position:absolute; top:10%; left:50%; width:200px; margin-left:-100px; padding:0;"><img src="image_haut.jpg></div>

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

Discussions similaires

  1. Problème de positionnement avec mes DIV
    Par Rifton007 dans le forum Mise en page CSS
    Réponses: 11
    Dernier message: 23/01/2007, 10h48
  2. Conserver le positionnement d'une div
    Par GPZ{^_^} dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 16/11/2006, 09h10
  3. [CSS]positionnement dans une div
    Par graphicsxp dans le forum Mise en page CSS
    Réponses: 11
    Dernier message: 10/07/2006, 11h01
  4. positionnement de plusieurs div au meme endroit
    Par quinen dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 12/03/2006, 19h37
  5. [CSS]Positionnement des blocs <div> + pb selon navigat
    Par Trunks dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 07/12/2005, 10h56

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