Aller au contenu

[Resolu] probleme d'affichage CSS dans une frame


rportal

Sujets conseillés

Bonjour,

j'ai un petit soucis avec le tuple: CSS, XHTML et les frames.

:gueule: quand j'affiche ma page directement, l'affichage est impecable mais quand je le fais dans un frame, cela bug enormement (sous IE pas sous Mozilla).

J'utilise un positionnement absolu. Est ce que cela pourrait venir de la?

Note: les frames sont amenees par ma redirection chez ovh.

Page s'affichant correctement [c'est à dire hors frame]

La meme page mais dans une frame, chez moi ca plante

Modifié par rportal
Lien vers le commentaire
Partager sur d’autres sites

Ouhla, en effet, gros bug dans le moteur d'IE.

Bah évite les frames alors ;)

De toute façon avoir un nom de domaine qui redirige sur un autre domaine avec une frame afin de conserver l'URL dans la barre d'adresse c'est une vielle méthode ultra cheap. Sans compter que les frames en tant que telles c'est gonflant.

Assume le fait d'être chez free (tu pourras toujours faire une redirection plus tard), sinon prends un vrai hébergement (y'en a des pas chers) :)

Lien vers le commentaire
Partager sur d’autres sites

:whistling: Tu connais un hebergeur pas cher qui propose entre 500Mo et 1Go pour pas cher?

Mon site fait déjà 250Mo et je prévoie qu'il grossisse de 200Mo d'ici un an (entre 2000 et 3000 photos en plus) et heureusement que je redimensionne mes photos en 800x600 :hourra:

Donc pour une histoire de feuille de style, dans un premier temps, je voudrais bien essayer de le résoudre ;) . Ensuite on verra.

Mais je veux bien que l'on m'indique les hebergeur pas chers :)

Si quelqu'un a besoin que je poste ma feuille, qu'il n'hesite pas a demander :P

Lien vers le commentaire
Partager sur d’autres sites

Bon je viens de faire des tests:

j'ai identifié le bug et j'ai un écrit workaround:

Desciption du bug:

Quand une feuille de style est chargée dans une frame et que cette feuille de style tente de d'afficher une image en background avec l'attribut no-repeat, IE plante en beauté. C'est l'utilisation du no-repeat qui fait planter.

Exemple de code défaillant:

body {
background: url(rod2.jpg) 513px 85px no-repeat;
}

WORKAUROUND:

Il suffit de mettre un div qui englobe tout le code du body <body><div id="bieg"> .... </div></body> et d'appliquer l'image à ce div.

exemple de code correcteur:

#bieg {
height: 600px;
position: absolute;
top: 0px;
left: 0px;
width: 100%;
background: url(rod2.jpg) 513px 85px no-repeat;
}

Voili voilou, pas besoinde changer d'hebergeur ou de changer la redirection :fete:

Modifié par rportal
Lien vers le commentaire
Partager sur d’autres sites

Je suis assez d'accord avec Hadrien... quel avantage d'avoir une frame pour rediriger un truc comme ça ? De toutes façons

  • Les moteurs de recherches ammèneront sur hpap.free.fr
  • Le visiteur verra bien que les liens pointent tous vers hpap.free.fr (dans la barre d'état ou les infobulles).

Bref... je peine à saisir le vrai but de cette manipulation...

Pour ma part, non seulement ça ne me gène pas de voir un "free.fr" plutôt qu'un "biz", mais en plus j'aime bien connaitre le vrai domaine du site que je visite (quitte à faire un clic droit > Ce cadre > Afficher seulement ce cadre :lol: )

Lien vers le commentaire
Partager sur d’autres sites

Le but de la manipulation est simple:

il arrive assez souvent qu'un site référencé sur un autre soit affiché dans une frame quand tu visites le site. Si le site plante dans ce cas, c'est pas top.

Ensuite, même si les moteurs de recherche vont enregistrer http://hpap.free.fr/ , je pense qu'il est plus facile pour les personnes à qui je donne l'adresse du site de retenir http://www.rodrigue.biz/ . Il ne faut pas oublier qu'il s'agit d'un site personnel. L'audience (de par son contenu) sera en grande partie des personnes que je connais...

Donc perso, je suis content d'avoir trouver le bug et de l'avoir résolu, cela me permet de ne pas changer les choses...

Modifié par rportal
Lien vers le commentaire
Partager sur d’autres sites

#bieg {
height: 600px;
position: absolute;
top: 0px;
left: 0px;
width: 100%;
background: url(rod2.jpg) 513px 85px no-repeat;
}

Même si çà marche comme çà, essaie d'éviter les position:absolute quand elles ne sont pas nécessaires, c'est un truc à s'arracher les cheveux quand tu manipules plusieurs div imbriqués par la suite.

Je verrais bien le code comme çà:

#bieg {
margin:0;
height: 600px;
width: 100%;
background: url(rod2.jpg) 513px 85px no-repeat;
}

NB: Je n'ai pas testé, normalement çà marche sans problème. Çà doit te faire visuellement la même chose qu'avant.. en plus évolutif ;)

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...