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 :

Pas de margin-top lors de la simulation de position:fixed sous IE


Sujet :

CSS

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Par défaut Pas de margin-top lors de la simulation de position:fixed sous IE
    Salut,

    En utilisant l'exemple de la FAQ : Comment simuler le style CSS "position : fixed" sous Internet Explorer, sans utiliser de javascript ?. Un problème intervient dans mon adaptation. La propriété margin-top n'a aucun effet sur #contenu sous IE, je suis obligé d'utiliser padding-top. Savez-vous pourquoi?
    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
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr"
    lang="fr">
      <head>
        <meta content="text/html; charset=UTF-8" http-equiv="content-type" />
        <title>jquery mon album photo</title>
        <style type="text/css">
        * {margin:0; padding:0; background-color:#000000;}
    	#entete {
    		width:100%; 
    		height:100px; 
    		background-color:#111111; 
    		position:fixed; 
    		top:0; 
    		left:0; 
    		color:#dddddd;
     
    		position:expression("absolute"); 
    		width:expression("100%"); 
    		top:expression(document.body.scrollTop + this.offsetHeight - this.offsetHeight); 
    		left:expression("0px"); 
    	}
    	#contenu {
    		padding-top:120px;
    		width:500px; 
    		background-color:#222222;
    		color:#dddddd;
    	}
        </style>
      </head>
      <body>
        <div id="entete">ENTETE</div>
    	<div id="contenu">Du texte à mettre
    	</div>
      </body>
    </html>
    Merci par avance.

    PS: sans utiliser javascript, c'est vite dit...

  2. #2
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    Citation Envoyé par franculo_caoulene Voir le message
    PS: sans utiliser javascript, c'est vite dit...
    Sans Javascript apparent.

    J'avoue ne pas savoir ce qui fait réagir IE6 comme ça, mais je sais qu'au lieu de mettre un padding-top, tu peux mettre un margin-top sur le body qui fonctionne très bien.

    Autre chose, pour ne pas avoir le clignotement sur IE6 quand tu scrolles, rajoute ce code dans le body :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    background:url(blank.gif) fixed;

  3. #3
    Membre Expert Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Par défaut
    Ca ne répond pas à ma question précisément mais ça résoud le problème sous-entendu. Je tiens donc à dire "très grande classe!", merci.
    J'hésite à mettre le tag [Résolu]...

    Peut-être faudrait-il compléter la question pour le clignotement?

    Merci encore.

    [edit] d'ailleurs dans l'exemple donné ces deux lignes ne sont pas nécessaires
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    width:expression("100%"); 
    left:expression("0px");
    Enfin à mes yeux.

  4. #4
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    Peut-être attendre un peu, si quelqu'un a la réponse à la question originelle.

    Je vais en référer au responsable de la FAQ pour le clignotement et le code inutile, qui l'est aussi pour moi.

  5. #5
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    Au passage, à cause de ton prologue XML, IE6 bascule en mode Quirks.

    Si jamais tu décides de l'enlever pour avoir un mode Standard sur IE6, il faut que tu modifies le code Javascript : Remplacer document.body par document.documentElement.

  6. #6
    Membre Expert Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Par défaut
    Toujours bon à savoir, merci encore.

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

Discussions similaires

  1. Margin-top qui ne fonctionne pas sous firefox
    Par sam01 dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 25/06/2011, 18h11
  2. Réponses: 2
    Dernier message: 07/01/2007, 11h06
  3. Réponses: 5
    Dernier message: 01/07/2006, 13h52
  4. margin top dans un tableau
    Par MicroPuce dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 22/05/2006, 18h05
  5. margin-top sans définir height
    Par Invité dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 13/03/2006, 21h03

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