--- title: "iFrame Best Practices" slug: "iframe-best-practices" updated: 2024-11-18T12:48:11Z published: 2024-11-18T12:48:11Z canonical: "docs.onespan.com/iframe-best-practices" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.onespan.com/llms.txt > Use this file to discover all available pages before exploring further. # Meilleures pratiques iFrame Les iFrames peuvent être utilisés pour intégrer l’expérience du signataire dans une application tierce. Les sections suivantes décrivent certaines bonnes pratiques pour les développeurs qui effectuent une telle intégration : - [Partage des ressources inter-origines](/v1/docs/fr/iframe-best-practices#partage-des-ressources-interorigines) - [Rendre les dimensions d’un iFrame dynamiques](/v1/docs/fr/iframe-best-practices#rendre-les-dimensions-d’un-iframe-dynamiques) - [Empêcher les utilisateurs mobiles de mettre à l’échelle le contenu](/v1/docs/fr/iframe-best-practices#empêcher-les-utilisateurs-mobiles-de-mettre-à-l’échelle-le-contenu) - [Ajout d’un CSS de défilement basé sur le momentum pour les appareils iOS](/v1/docs/fr/iframe-best-practices#ajout-d’un-cssnbspde-défilement-basé-sur-le-momentum-pour-les-appareils-iosnbsp) - [Exemple complet](/v1/docs/fr/iframe-best-practices#exemple-complet) ## Partage des ressources inter-origines Pour améliorer les performances et la sécurité, la communication inter-origines est activement bloquée par tous les « navigateurs évolutifs » (c’est-à-dire les navigateurs qui sont automatiquement mis à niveau vers les versions ultérieures). Cela pose divers obstacles au partage des ressources d’origine croisée (CORS), mais les sections suivantes illustrent comment certains de ces problèmes peuvent être surmontés : - [Création de cookies de session](/v1/docs/fr/iframe-best-practices#création-de-cookies-de-session) - [Redirection en dehors d’un iFrame](/v1/docs/fr/iframe-best-practices#redirection-en-dehors-d’un-iframe) ### Création de cookies de session Pour créer un témoin de session sur OneSpan Sign, vous devrez peut-être : 1. Créez la session en ouvrant l’URL de l’iFrame dans une nouvelle fenêtre. 2. Rafraîchissez votre page avec l’iFrame. Vous êtes plus susceptible d’avoir besoin de la procédure ci-dessus si la session se déroule sur un appareil mobile. ### Redirection en dehors d’un iFrame Si vous utilisez OneSpan Sign à l’intérieur d’un iFrame, puis que vous redirigez vers un autre domaine à partir de cet iFrame, ce domaine doit désactiver l’en-tête X-Frame-Options. Si ce n’est pas fait, la page vers laquelle vous redirigez sera vide. Pour effectuer une redirection en dehors de l’iFrame, envisagez d’utiliser notre [Event Notifer](/v1/docs/fr/using-javascript-event-notifiers). ## Rendre les dimensions d’un iFrame dynamiques Pour le produit OneSpan Sign, il est souhaitable de rendre la hauteur et la largeur d’un iFrame dynamiques, c’est-à-dire de s’assurer que ses dimensions sont ajustées automatiquement afin qu’il soit toujours bien en vue et que ses côtés soient toujours visibles. Les sections suivantes abordent trois autres façons d’obtenir une vue complète : - [Utilisation des unités de la fenêtre d’affichage](/v1/docs/fr/iframe-best-practices#utilisation-des-unités-de-la-fenêtre-d’affichage) - [Utilisation du positionnement fixe](/v1/docs/fr/iframe-best-practices#utilisation-du-positionnement-fixe) - [Utilisation de dimensions fixes](/v1/docs/fr/iframe-best-practices#utilisation-de-dimensions-fixes) ### Utilisation des unités de la fenêtre d’affichage Pour garantir une vue complète, vous pouvez utiliser des [unités de fenêtre d’affichage](https://caniuse.com/#feat=viewport-units) et une [calculatrice en ligne](https://caniuse.com/#feat=calc). #### Exemple de code ```css body { margin: 0; /* Reset default margin */ } iframe { display: block; /* iframes are inline by default */ background: #000; border: none; /* Reset default border */ height: 100vh; /* Viewport-relative units */ width: 100vw; } ``` ### Utilisation du positionnement fixe Le moyen le plus sûr d’assurer une vue complète est d’utiliser un positionnement fixe. #### Exemple de code ```css iframe { position: fixed; background: #000; border: none; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; } ``` ### Utilisation de dimensions fixes Pour garantir une vue complète, vous pouvez utiliser des dimensions fixes en vous assurant que l’iFrame utilise 100 % de l’écran. #### Exemple de code ```css html, body { height: 100%; margin: 0; /* Reset default margin on the body element */ } iframe { display: block; /* iframes are inline by default */ background: #000; border: none; /* Reset default border */ width: 100%; height: 100%; } ``` ## Empêcher les utilisateurs mobiles de mettre à l’échelle le contenu Le code suivant illustre comment empêcher les utilisateurs d’appareils mobiles de mettre à l’échelle le contenu d’un iFrame. Si vous ne le faites pas, votre iFrame risque de ne plus être bien en vue. #### Exemple de code ```xml ``` ## Ajout d’un CSS de défilement basé sur le momentum pour les appareils iOS Étant donné que vous ne pouvez pas toujours contrôler les dimensions d’un iFrame, il se peut que certains contenus ne soient pas accessibles via le défilement. Cela est particulièrement probable pour les appareils iOS tels que les iPhones et les iPads. Pour optimiser la convivialité des appareils iOS : 1. Créez un élément HTML wrapper pour votre iFrame (par exemple, créez un div). 2. Activez le CSS de défilement basé sur le momentum sur le wrapper, comme illustré par le code suivant : ```css -webkit-overflow-scrolling: touch; ``` La procédure ci-dessus garantit que si le contenu d’un iFrame n’est pas défilable, vous pouvez faire défiler l’élément parent. ## Exemple complet Le code suivant illustre les meilleures pratiques décrites ci-dessus. #### Exemple de code ```xml