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 :

comment placer des images en absolu dans un header


Sujet :

Positionnement en CSS

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2009
    Messages : 128
    Points : 46
    Points
    46
    Par défaut comment placer des images en absolu dans un header
    bonjour,
    j'ai passé la journée aujourd'hui à essayer de placer trois objets dans un header.
    je m'en suis finalement sorti avec les float et les marges mais je suis étonné que je n'en sois pas sorti avec les absolute.
    en fait les absolute étaient relatifs au body et non au wrapper, donc je finissais par y arriver mais j'avais peur que cela dépende de l'écran
    Pouvez-vous svp me dire comment dans mon header de 900x276, je peux placer facilement en absolu par rapport au header du wrapper un bandeau jpeg de 900x276, un logo gif de 151x160, une animation gif de 134x99 et une horloge (qui d'ailleurs m'énerve avec son texte "gratuit sur votre site")

    je joins mon code de sauvetage :

    Code css : 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
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
     
    * {margin:0 ; padding:0} 
     
    body {
    	text-align: center;
    	margin: 0px;
    	padding: 0px;
    	font-family: Georgia, "Times New Roman", Times, serif;
    	font-size: 12px;
    	font-style: normal;
    	color: #FFFFFF;
    	background-color: #460401;
    }
    #header h1 {
    	font-variant: small-caps;
    	color: #FF3300;
    }
    #wrapper {
    	background-color: #000000;
    	text-align: left;
    	width: 900px;
    	margin-top: 25px;
    	margin-right: auto;
    	margin-bottom: 25px;
    	margin-left: auto;
    }
    #header {
    	margin: 0px;
    	font-size: 24px;
    	padding: 0px;
    	height: 276px;
    	background-image: url(../images/bandeau_pigeons.png);
    	background-color: #FFFF00;
    }
    #header_clock {
    	float: right;
    	width: 150px;
    	padding-top: 160px;
    	padding-right: 0px;
    	padding-bottom: 0px;
    	padding-left: 0px;
    }
    #header_logo {
    	width: 151px;
    	float: left;
    	padding-top: 5px;
    	padding-right: 0px;
    	padding-bottom: 0px;
    	padding-left: 5px;
    }
    #header_animation {
    	margin-left: 200px;
    	padding-top: 100px;
    	padding-right: 0px;
    	padding-bottom: 0px;
    	padding-left: 200px;
    	margin-right: 200px;
    	margin-top: 0px;
    	margin-bottom: 0px;
    }

    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
     
    <body>
    	<div id="wrapper">
     
    		<div id="header">
     
    	      <div id="header_logo">     
                	<img src="../images/logo_pigeons.png" alt="MP" width="151" height="160" />           </div>
    	      <!-- end of header_logo -->
     
               <div id="header_clock">
                	<SCRIPT Language="JavaScript" SRC="http://www.toutimages.com/horloge_flash/12.js"></SCRIPT>
                 </div> <!-- end of header_clock -->
     
                <div id="header_animation">     
                	<img src="../images/animation_pigeons.gif" alt="MP" width="134" height="99" />            </div>
                <!-- end of header_logo -->
     
     
     
      	     </div>  
    	  <!-- end of header -->
     
       	  <div id="maincontent">

    merci d'avance

  2. #2
    Rédacteur
    Avatar de Macmillenium
    Homme Profil pro
    Développeur front-end
    Inscrit en
    Mars 2008
    Messages
    2 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur front-end
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2008
    Messages : 2 333
    Points : 3 747
    Points
    3 747
    Par défaut
    Bonjour et bienvenue

    Citation Envoyé par ml1234 Voir le message
    en fait les absolute étaient relatifs au body et non au wrapper, donc je finissais par y arriver mais j'avais peur que cela dépende de l'écran
    L'élément en absolute se réfère à son premier conteneur parent qui est lui même positionné (absolute, relative et fixed).
    Si aucun de ses parents n'est positionné, il se réfère à l'élément racine <html>.

    Citation Envoyé par ml1234 Voir le message
    Pouvez-vous svp me dire comment dans mon header de 900x276, je peux placer facilement en absolu par rapport au header du wrapper un bandeau jpeg de 900x276, un logo gif de 151x160, une animation gif de 134x99 et une horloge (qui d'ailleurs m'énerve avec son texte "gratuit sur votre site")
    Il suffit donc de positionner ton header du wrapper en relative
    Je ne réponds pas aux questions techniques par MP.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2009
    Messages : 128
    Points : 46
    Points
    46
    Par défaut re
    génial, ça marche, merci !

    le code css modifié :

    Code : 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
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    * {margin:0 ; padding:0} 
     
    body {
    	text-align: center;
    	margin: 0px;
    	padding: 0px;
    	font-family: Georgia, "Times New Roman", Times, serif;
    	font-size: 12px;
    	font-style: normal;
    	color: #FFFFFF;
    	background-color: #460401;
    }
    #header h1 {
    	font-variant: small-caps;
    	color: #FF3300;
    }
    #wrapper {
    	background-color: #000000;
    	text-align: left;
    	width: 900px;
    	margin-top: 25px;
    	margin-right: auto;
    	margin-bottom: 25px;
    	margin-left: auto;
    }
    #header {
    	margin: 0px;
    	font-size: 24px;
    	padding: 0px;
    	height: 276px;
    	background-image: url(../images/bandeau_mondialpigeons.png);
    	background-color: #FFFF00;
    	width: 900px;
    	position: relative;
    }
    #header_clock {
    	width: 150px;
    	padding: 0px;
    	height: 80px;
    	position: absolute;
    	left: 750px;
    	top: 130px;
    }
    #header_logo {
    	width: 151px;
    	padding-top: 5px;
    	padding-right: 0px;
    	padding-bottom: 0px;
    	padding-left: 5px;
    	height: 160px;
    	position: absolute;
    	top: 5px;
    	left: 0px;
    }
    #header_animation {
    	margin: 0px;
    	padding: 0px;
    	height: 99px;
    	width: 134px;
    	position: absolute;
    	left: 400px;
    	top: 100px;
    }
    finis les padding et margin partout dans le header.

    ici, seul mon bandeau/header est en relatif.
    de façon générale, est-il préférable de mettre le wrapper de 900px en relatif et au lieu de jouer avec des marges et padding et des float left/right pour les colonnes,... de tout positionner en absolu ?

    merci
    Marc

  4. #4
    Rédacteur
    Avatar de Macmillenium
    Homme Profil pro
    Développeur front-end
    Inscrit en
    Mars 2008
    Messages
    2 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur front-end
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2008
    Messages : 2 333
    Points : 3 747
    Points
    3 747
    Par défaut
    Citation Envoyé par ml1234 Voir le message
    de façon générale, est-il préférable de mettre le wrapper de 900px en relatif et au lieu de jouer avec des marges et padding et des float left/right pour les colonnes,... de tout positionner en absolu ?
    Je ne saurais pas te dire lequel des choix est le plus pertinent pour toi, il est recommandé de garder le maximum des éléments dans le flux normal, ce que float permet.
    Cela n'empêche que les positionnements fixed et absolute sont bien pratiques dans certains cas de figures (menu dynamique, superposition d'éléments etc.) mais posent énormément de contraintes pour gérer une mise en page complexe.
    Je ne réponds pas aux questions techniques par MP.

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

Discussions similaires

  1. [FAQ][VC++]Comment placer des images sur un menu contextuel
    Par Gabrielly dans le forum Contribuez
    Réponses: 0
    Dernier message: 14/04/2009, 18h48
  2. [FAQ][VC++]Comment placer une image de fond dans une dialogue
    Par Gabrielly dans le forum Contribuez
    Réponses: 0
    Dernier message: 09/04/2009, 17h21
  3. Comment stocker des images dans une base de données ?
    Par [Silk] dans le forum Bases de données
    Réponses: 4
    Dernier message: 21/07/2005, 11h29
  4. Réponses: 4
    Dernier message: 11/06/2004, 10h21

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