Problème images de fond des cadres IE vs FF

HTML5, CSS3, Javascript, support des mobiles... Que penser de votre site ? Vous manquez d'informations pour la construction d'un site qui puisse s'afficher correctement partout ? C'est un problème simple, un peu complexe ? Venez ici !
steph38
Arias
Messages : 1
Inscription : 15 juin 2005, 22:53

Problème images de fond des cadres IE vs FF

Message par steph38 »

Bonjour,
J'ai un sourci dans l'utilisation d'images de fond pour des cadres:

J'ai une première image de fond générale pour la page.
J'ai créé une deuxième image de fond pour les frames, simplement en ajoutant plus de lumière à la première.

Lorsque j'utilise l'image 2 pour des cadres les résultats sont différents entre IE et FF :

FF : les cadres semblent utiliser une seule image 2 placée exactement comme l'image 1. Cela donne une impression de transparence du cadre.
Image

IE : Chaque cadre contient l'image 2
Image

Code (j'utilise PHP):
<body style="background: url(graphics/bg_home.jpg) no-repeat fixed;">
<table border=0 width="100%" height="100%">
<tr height="100%">
<td><iframe style="background: url(graphics/bg_home_frame.jpg) fixed no-repeat; background-color: rgb(256,256,256);" src="infos_menu.php" width="165" height="98%" name="infos_menu" scrolling="auto" frameborder="0" allowtransparency="true"></iframe></td>
<td><iframe style="background: url(graphics/bg_home_frame.jpg) fixed no-repeat; background-color: rgb(256,256,256);" src="infos_text_welc.php" width="650" height="98%" name="infos_text" scrolling="auto" frameborder="0" allowtransparency="true"></iframe></td>
</tr>
</table>
</body>

1- J'aime cet effet mais il ne fonctionne pas sous IE, comment le coder pour IE?

2- Dans d'autre cas, je ne le veux pas, comment l'enlever pour Firefox?

3- J'ai vu qu'il est recommendé de laisser tomber les cadres. Savez-vous comment obtenir un effet de transparence comme celui-là sans les utiliser? une table + du PHP + du CSS peut-être?

Vive Firefox, et un grand merci pour votre aide :wink:

[/b]
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

Eh oui, on ne le répétera jamais assez, mais il ne faut pas oublier que le support de CSS1 de IE n'est pas complet, même si Microsoft l'affirme :lol:

En l'occurence, il ne supporte pas la propriété CSS background-attachment:fixed sur autre chose que le body :evil:
http://meyerweb.com/eric/css/edge/compl ... /demo.html
Solution : se contenter de mettre un arrière plan et y appliquer une transparence (propriété CSS3 opacity qu'IE ne supporte pas non plus et qu'il faut émuler avec des filter :x )

PS :
Invité

Mettre à jour une div sans recharger toute la page?

Message par Invité »

Salut!
Merci pour cette réponse rapide et pour ces ces liens, c'était exactement ce qui me fallait!
Je comprends mieux les intérêts de travailler avec les div et le CSS.
J'ai "converti" tout mon site en suivant cette méthode. (Non sans mal :roll: )

Il me reste un petit problème... :
Mettre à jour une div sans recharger toute la page :?:
Seule méthode que j'ai trouvée : XmlHttpRequest
http://qwix.media-box.net/index.php/200 ... questEtPhp
Pb : c'est du Javascript et certaines personnes le désactive (c'est vrai ça?)
Est-ce qu'il y a d'autres méthodes purement html/css ??? :?:

Voila le cas expliquant pourquoi je tiens à une telle fonction:
J'utilise un petit lecteur flash pour mp3 sur une page contenant un menu et une zone de texte.
Avant, avec les cadres, on pouvait facilement naviguer dans le texte et le lecteur jouait indépendemment.
Maintenant, comme ces éléments sont dans des divs sur une même page,
à chaque fois que l'on clique un lien du menu, la page entière est rechargée et le lecteur flash est réinitialisé.
Précision sur la structure actuelle (div+CSS) :
1 div avec include pour le menu
1 div avec include pour les différents textes correspondants
1 div avec include pour le lecteur flash qui a comme paramètre une playlist XML.
Benoit
Administrateur
Messages : 4894
Inscription : 19 juil. 2003, 10:59

Message par Benoit »

Je pense que tu peux raisonablement supposer que les gens qui désactivent JavaScript couperont ton mp3 dès que possible :)
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Re: Mettre à jour une div sans recharger toute la page?

Message par calimo »

Anonymous a écrit :Pb : c'est du Javascript et certaines personnes le désactive (c'est vrai ça?)
Oui, absolument vrai !
Il y a par exemple :
  • Moi (:mrgreen:)
  • Tous ceux qui n'ont pas de navigateur graphique
  • Tous ceux dont l'administrateur système a désactivé le javascript pour des raisons de sécurité
  • Pas mal d'autres situations encore
Anonymous a écrit :Est-ce qu'il y a d'autres méthodes purement html/css ??? :?:
Non. Le HTML n'a pas de tel mécanisme (à part les frames qui posent trop d'autres problèmes).
Quant aux CSS, c'est juste la mise en page, absolument pas le contenu (quoiqu'on peut en générer... mais alors c'est pire que le mal de départ :? )
Voila le cas expliquant pourquoi je tiens à une telle fonction:
J'utilise un petit lecteur flash pour mp3 sur une page contenant un menu et une zone de texte.
Avant, avec les cadres, on pouvait facilement naviguer dans le texte et le lecteur jouait indépendemment.
Maintenant, comme ces éléments sont dans des divs sur une même page,
à chaque fois que l'on clique un lien du menu, la page entière est rechargée et le lecteur flash est réinitialisé.
Eh oui.
Précision sur la structure actuelle (div+CSS) :

Solution : utiliser XmlHttpRequest raisonnablement en fournissant des alternatives (et si possible rendre ça même totalement transparent pour l'utilisateur sans javascript). Je ne l'ai jamais fais, mais c'est sans doute possible.
Sinon tu peux aussi émuler les frames en javascript.

Dans tous les cas, avec XmlHttpRequest ou frames, tu retombes dans les problèmes posés par les frames : pas de marque-pages (pas 1 URL - 1 page) :(
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 3 invités