Page 1 sur 1

Problème images de fond des cadres IE vs FF

Publié : 15 juin 2005, 23:45
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]

Publié : 16 juin 2005, 08:26
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 :

Mettre à jour une div sans recharger toute la page?

Publié : 18 juin 2005, 22:29
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.

Publié : 19 juin 2005, 10:38
par Benoit
Je pense que tu peux raisonablement supposer que les gens qui désactivent JavaScript couperont ton mp3 dès que possible :)

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

Publié : 19 juin 2005, 14:56
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) :(