rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

Pb avec <iframe height="100%"> sou

TheNox, le samedi 16 avril 2005 à 13:00:44
Salut à tous

J'aimerais savoir pourquoi le script

<iframe height="100%" src="..."> blabla </iframe> ne fonctionne pas sous firefox
Il ignore "height" à 100%. Pareil pour "width".


Sous IE, ca marche bien

Comment faire pour avoir compatibilité avec ie et firefox ?

Merci !

<TheNox> :-)
Répondre à TheNox  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
pazz, le lundi 17 décembre 2007 à 08:37:21
Hi

Déjà c'est pas un script! et de plus sur IE sa ne marche pas, malheureusement les iframes ne sont pas extensible a moin de faire un javascript mais j'y arrive pas :S
si quelqu'un saurai comment faire?? (pas de php)

Merci
Répondre à pazz

2


  • 1
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
 berzek, le lundi 18 août 2008 à 19:26:09
Voici les solutions que je te propose suivant le navigateur et le domaine (sécurité) dans lequel s'execute ton code..


En espérant que tu trouves ton bonheur ou que ca te mette sur la bonne voie ..

@+

REM :
PERSO : j'ai finalement opté pour un code en dure (cf. demo en live : http://www.weboose.fr/sponsors/test_iframe.htm )

---------------------------------------
** solution 1 (uniquement sous ie et pas firefox)

tu indiques des height et width en dure, ex : <iframe height=800 (au lieu de height=100%)
- marche pas sous firefox malheureusement

---------------------------------------
**solution 2 (uniquement sous ie)

Si tu ne connais encore la taille que le contenu de ta frame prendra, tu peux aussi le définir en dure a partir de ta frame plutot qu'a partir du parent...


code du PARENT (dans le body) :

<iframe src="http://www.weboose.fr/sponsors/sponsorsx.htm" id="sponsorFrame" mame="sponsorFrame" scrolling="auto" frameborder="0"></iframe>



code dans la page appellée par la FRAME (avant le <body> de la page appellée dans l'iframe) :


<script type="text/javascript">
maframe = parent.document.getElementById('sponsorFrame');// frame in the parent
function ExecuteOnload()
{
alert("Apres ce message, l'Iframe va s'agrandir..");
maframe.style.height = "800";
maframe.style.width = "800";
}
</script>
<body onload="ExecuteOnload();">

---------------------------------------
**solution 3 (marche sous ie ET FIREFOX !) :

code du PARENT (dans le body) :

<iframe src="http://www.weboose.com/sponsors/sponsorsx.htm" id="sponsorFrame" mame="sponsorFrame" width="100%" scrolling="auto" frameborder="0"></iframe>

code dans la page appellée par la FRAME (avant le <body> de la page appellée dans l'iframe) :

<script type="text/javascript">
maframe = parent.document.getElementById('sponsorFrame');// frame in the parent

function resizeIframe() {
var height = parent.document.documentElement.clientHeight;//document.documentElement.clientHeight;
height -= maframe.offsetTop;
height -= 20; /* whatever you set your body bottom margin/padding to be */
maframe.style.height = height +"px";
};

maframe.onload = resizeIframe;
window.onresize = resizeIframe;
</script>


REM ! Attention cpdt, il faut également que parent et frame cible soit soit sous le meme domaine sinon il peut y avoir un "access denied" qui s'opere lors d'un crossdomaine et empeche alors l'execution normal du code
(http://msdn.microsoft.com/en-us/library/ms533028(VS.85).aspx)

---------------------------------------
**solution 4 (marche sous ie ET FIREFOX !) :

Code à inclure directement dans la page parent dans le body

<body onload="resizeIframe();">
<script type="text/javascript">
function resizeIframe()
{
maframe = document.getElementById('sponsorFrame');// frame in the parent
maframe.style.height = maframe.contentWindow.document.body.scrollHeight+"px"; //changement de la hauteur
maframe.style.width = maframe.contentWindow.document.body.scrollWidth+"px"; //changement de la largeur
}
</script>
<iframe src="http://www.weboose.com/sponsors/sponsorsx.htm" id="sponsorFrame" name="sponsorFrame" WIDTH="100%" HEIGHT="100%" frameborder="0" scrolling="no"></iframe>

REM ! Attention cpdt, il faut également que parent et frame cible soit soit sous le meme domaine sinon il peut y avoir un "access denied" qui s'opere lors d'un crossdomaine et empeche alors l'execution normal du code
(http://msdn.microsoft.com/en-us/library/ms533028(VS.85).aspx)


REM . une maniere de contourner le pb de sécurité précédent et avoir un code qui fonctionne a la fois dans ie et firefox serait de réécrire en dure la fonction précédente comme ceci :

function resizeIframe()
{
maframe = document.getElementById('sponsorFrame');// frame in the parent
maframe.style.height = "800";//maframe.contentWindow.document.body.scrollHeight+"px"; //changement de la hauteur
maframe.style.width = "100%";//maframe.contentWindow.document.body.scrollWidth+"px"; //changement de la largeur
}
Répondre à berzek
Taiyo Yuden Pack de 100 CD-R 700 Mo 52x sous cellophaneTaiyo Yuden Pack de 100 CD-R 700 Mo 52x sous cellophane,52 x ,Taiyo Yuden CD-R 700MB  52x - Pack de 100 sous cellophane - Format: CD-R - Capacité d'enregistrement: 700 Megabyte / 80 Minutes - Non réinscriptible - Vitesse de gravage: jusqu'à 52x www.commentcamarche.net/guide-achat/taiyo-yuden-pack-de-100-cd-r-700-mo-52x-sous-cellophane-474352085-fiche-technique
Mediarange DVD+R 4,7 Go Mediarange 8x Speed AZO 100 piecesMediarange DVD+R 4,7 Go Mediarange 8x Speed AZO 100 pieces,8 x ,Désignation: DVD+R 4,7 Go Mediarange 8x Speed AZO Sans logo du fabricant en tour de 100 sous cellophane Ref. article: 00100/ Med1 Emballage: tour in cellophane Poids en kg: 1,900 www.commentcamarche.net/guide-achat/mediarange-dvd-r-4-7-go-mediarange-8x-speed-azo-100-pieces-48828049-fiche-technique
GTL-MEDIEN DVD-R 4,7 GO GTL 8x Speed AZO Blank 100 piecesGTL-MEDIEN DVD-R 4,7 GO GTL 8x Speed AZO Blank 100 pieces,8 x ,Désignation: DVD-R 4,7 Go GTL 8x Speed AZO Sans logo du fabricant en tour de 100 sous cellophane Ref. article: 00101/ GTL Emballage: tour in cellophane Poids en kg: 1,900 Le prix incroyable!!! www.commentcamarche.net/guide-achat/gtl-medien-dvd-r-4-7-go-gtl-8x-speed-azo-blank-100-pieces-48828072-fiche-technique
Javascript - Modifier la hauteur (height) d'un élément HTMLPour modifier la hauteur d'un élément HTML en javascript, il suffit d'utiliser sa propriété de style "height". Pour cela vous pouvez y faire référence de la manière suivante : Si vous souhaitez connaître la hauteur (height) d'un bloc HTML, il... www.commentcamarche.net/faq/sujet-11740-javascript-modifier-la-hauteur-height-d-un-element-html
CSS simple : mettre texte en bas (Résolu)Bonjour, Comment mettre cette balise div en bas ? mon texte Le Code CSS (ma ligne fait bien 100px, mais le texte s'aligne en haut... : .menu_en_tete { height:100px; vertical-align:bottom;/*n'a aucune... www.commentcamarche.net/forum/affich-3857456-css-simple-mettre-texte-en-bas
Banniére arrondien en HTML (Résolu)Bonsoir, Est-il possible dans la création d'une banniére en html d'obtenir des bords arrondis ? La définition est #en_tete {width:760px;height:100px;}, mais cela donne des bords carrés, peut-on réaliser ce genre de présentation ? Merci si... www.commentcamarche.net/forum/affich-3884835-banniere-arrondien-en-html
[javascript] probleme d'ecriture (Résolu)Bonjour, Ca marche pas!! function image() { parent.document.getElementById("IFrame2").height=220 .src='http://www.google.fr'; } Je definit la hauteur de mon Iframe (ca sa marche!) et j'affiche une page dans mon iframe (ca sa... www.commentcamarche.net/forum/affich-3811959-javascript-probleme-d-ecriture
Mediarange DVD-R 4,7 Go Mediranage 8x Speed AZO 100 piecesMediarange DVD-R 4,7 Go Mediranage 8x Speed AZO 100 pieces,8 x ,Désignation: DVD-R 4,7 Go Mediarange 8x Speed AZO Sans logo du fabricant en tour de 100 sous cellophane Ref. article: 00100/ Max2 Emballage: tour in cellophane Poids en kg: 1,900 www.commentcamarche.net/guide-achat/mediarange-dvd-r-4-7-go-mediranage-8x-speed-azo-100-pieces-48828050-fiche-technique
GTL-MEDIEN DVD+R 4,7 GO GTL 8x Speed AZO Blank 100 piecesGTL-MEDIEN DVD+R 4,7 GO GTL 8x Speed AZO Blank 100 pieces,8 x ,Désignation: DVD+R 4,7 Go GTL 8x Speed AZO Sans logo du fabricant en tour de 100 sous cellophane Ref. article: 00100/ GTL Emballage: tour in cellophane Poids en kg: 1,900 Le prix incroyable!!! www.commentcamarche.net/guide-achat/gtl-medien-dvd-r-4-7-go-gtl-8x-speed-azo-blank-100-pieces-48828071-fiche-technique
Taiyo Yuden Pack de 100 CD-R 700 Mo 48x sous cellophaneTaiyo Yuden Pack de 100 CD-R 700 Mo 48x sous cellophane,48 x ,- Format: CD-R - Capacité d'enregistrement: 700 Megabyte / 80 Minutes - Non réinscriptible - Vitesse de gravage: jusqu'à 48x - Face supérieure: surface blanche entièrement imprimable www.commentcamarche.net/guide-achat/taiyo-yuden-pack-de-100-cd-r-700-mo-48x-sous-cellophane-474351995-fiche-technique
Toutes les réponses pour « Pb avec &lt;iframe height=&quot;100%&quot;&gt; sou »