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

JavaScript Discussion :

Redimensionner dynamiquement une IFRAME


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    aux études mais 40 ans
    Inscrit en
    Juin 2004
    Messages
    2 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : aux études mais 40 ans

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 037
    Par défaut Redimensionner dynamiquement une IFRAME
    Bonjour,

    Ce post est un peu la suite d'un autre post que j'ai fait au sujet de iframe.
    J'ai utilisé Iframe (et un peu include aussi) pour intégrer un mini site Web dans une page wordpress (visible ici : https://www.imagiscene.com/agenda/).

    Ca fonctionne très bien sauf que je ne comprends pas comment se comporte Height.

    Le code dans ma page Wordpress est le suivant :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     <head>
        <style>
            #imgEtire{
        height : 100em;
        border : 300 px solide #CCC;
        Width : 100%;
        min-width : 20em;
    }
    </style>
    </head>
    <body>
       <iframe id="imgEtire" sandbox src="https://www.espaceimagi.com/_agenda_/agenda.php" alt=""> </iframe> 
    </body>

    Avec la valeur dans Height ont devrait donc pouvoir définir la taille du frame.

    Si j'indique une valeur en em ou en pt ça fonctionne nickel, plus la valeur est grande, plus le frame est "long". Logique.
    Par contre en % ça ne fonctionne pas ! Quelle que soit la valeur indiquée je n'ai qu'une toute petite fenêtre.
    J'ai essayé aussi des trucs comme auto ou inherit mais la aussi la frame reste petite.

    Moi ce que je voudrais c'est que la frame fasse la taille de son origine.
    --> S'il y a 2 évent's qu'elle soit toute courte et s'il y en a 50 qu'elle soit longue assez pour voir les 50 éléments et bien sur sans ascenseur.

    Mais est ce possible ?

    Merci d'avance de votre aide.

  2. #2
    Membre éprouvé
    Homme Profil pro
    aux études mais 40 ans
    Inscrit en
    Juin 2004
    Messages
    2 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : aux études mais 40 ans

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 037
    Par défaut
    La question est-elle débile ? Ou alors c'est impossible ?

  3. #3
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 207
    Par défaut
    Bonjour,
    une réponse partielle t'a été fournie dans ton autre discussion, avec lien à suivre, et notamment
    Point #4
    En ce qui concerne Height, si je met des valeurs pt ou em ça fonctionne, plus la valeur est grande plus la fenêtre est longue... logique. Par contre si je met 100% je n'ai en hauteur que l'équivalent d'un évent.
    Par défaut les <iframe> prennent comme valeurs height:150px et width:300px c'est comme cela sur tous les navigateurs, si l'on ne redéfinie pas l'une d'elles c'est donc la valeur par défaut qui est prise en compte.
    concernant la valeur exprimée en pourcentage, ce pourcentage est calculé par rapport aux dimensions du bloc conteneur qu'il faut donc dimensionner.

  4. #4
    Membre éprouvé
    Homme Profil pro
    aux études mais 40 ans
    Inscrit en
    Juin 2004
    Messages
    2 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : aux études mais 40 ans

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 037
    Par défaut
    Oui, ça j'ai compris :-).
    Enfin je crois...
    J'ai voulu faire un %tage en croyant que ça me donnerait un %tage de ma "source" --> 100% = toute ma source.
    Mais en fait ça me donner un %tage de ma destination.
    C'est bien ça ?

    Mais du coup mon problème reste entier.
    Est ce que je sais d'une manière ou d'une autre "étirer" ma zone de destination en fonction de la taille de ma zone de source ?

    Merci de ton aide.

  5. #5
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 207
    Par défaut
    Est ce que je sais d'une manière ou d'une autre "étirer" ma zone de destination en fonction de la taille de ma zone de source ?
    La réponse à ta question est non puisque tu la poses

    Plus sérieusement si tu veux adapter la hauteur de ton <iframe> à son contenu il te faut passer par du JavaScript à condition que les deux pages soient sur le même domaine, mais pas en triturant le CSS, on pourra en reparler.

    Pourquoi ne pas passer par un include voir une « page template » qui sont des solutions plus robuste et propre ?

  6. #6
    Membre éprouvé
    Homme Profil pro
    aux études mais 40 ans
    Inscrit en
    Juin 2004
    Messages
    2 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : aux études mais 40 ans

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 037
    Par défaut
    Parce que insérer du HTML dans une page WP c'est niveau 1ère primaire.
    Tu met le widget HTML sur la page la ou tu veux, tu met ton HTML dans la case correspondante et c'est fini :-)

    Un include c'est déjà "un peu plus compliqué" si l'approche est la même, à savoir utiliser un add ou un widget pour Wordpress dans une page Elementor.
    J'ai essayé et j'ai été confronté aux même problèmes qu'avec le iframe.

    Je suppose qu'il reste donc la solution de la page template.
    Elle me fait peur pour deux raisons.

    1/ Je ne suis pas sur du tout d'avoir le niveau pour faire une page template.
    2/ Il faudrait que je puisse fournir quelque chose de simple à mettre en place.
    --> Pour mon site www.imagiscene.be pas de souci, je peux faire tout ce que je veux, mais en fait c'est plus en test qu'autre chose.
    Au final le but est de fournir une solution testée et portable sur un autre site WP qui pourrait utiliser le même principe mais en utilisant son Layout de base.

    Maintenant il y a peut être encore d'autres approches aux quelles je n'ai pas pensé ?

Discussions similaires

  1. Redimensionnement dynamique d'une iframe
    Par Vanito dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 03/05/2014, 10h18
  2. Redimensionner dynamiquement une div
    Par LeCogiteur dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 31/03/2009, 08h03
  3. redimensionnement d'une iframe sous firefox
    Par stars333 dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 09/02/2008, 00h23
  4. Redimensionner dynamiquement une textbox
    Par soso78 dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 29/05/2007, 19h50
  5. Changement dynamique d'une iframe
    Par davids21 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 04/05/2005, 13h30

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