<iframe>

Fermé
SARAH - Modifié le 4 juin 2021 à 14:29
 SARAH - 6 juin 2021 à 15:30
Bonjour tous le monde, j'espère que vous allez bien!
je veux afficher des pdf sur mon sit web avec la possibilité de télécharger ou d'imprimer ces fichiers, alors j'ai essayé avec <iframe>,mais mon problème c'est que:
-est ce ca pose de problèmes si j'ai beaucoup de fichiers .
-et si j'avais beaucoup de fichiers, j'aurai beaucoup de pages html, est ce que je peux utiliser un seul <iframe>pour tous mes fichiers ,et comment svp.
merci d'avance.


<!DOCTYPE html>
<html>
<head>
<title>Titre du document</title>
</head>
<body>
<h1> document PDF</h1>
<iframe src="files/pdf1.pdf#toolbar=0" width="1000px" height="700px">
</iframe>
</body>
</html>




Configuration: Windows / Chrome 91.0.4472.77

2 réponses

J'ai pas bien poser ma question:
Est ce que c'est possible d'utiliser une seul page html et de changer le pdf qui s'affiche dans mon iframe à chaque fois ?
Et si c'est possible, est ce que on fait ça avec le javascript ?

Je suis une débutante et je développe mon site avec php.
0
Bonjour,
pourquoi une iframe qui n'est qu'une page intégrée dans une autre...un simple lien serait plus efficace.

"possible d'utiliser une seul page html et de changer le pdf qui s'affiche dans mon iframe à chaque fois ?
Et si c'est possible, est ce que on fait ça avec le javascript ?"

Oui et oui, il suffit de changer la page chargée par l'iframe avec JavaScript (voir DOM et la possibilité de manipuler les élements d'une page et leurs attributs).

Mais ce n'est pas pratique ni ne permets un affichage correct(respectueux des normes d'accessibilité et du web en général qui permettent entre autre l'indexation/référencement des contenus).
Pas pratique non plus parce que le lecteur de pdf est quelque chose à part et qu'il demandera beaucoup plus de ressources/temps de chargement pour s'afficher que du HTML qui n'est que du texte(le contenu d'un fichier même s'il peut 'pointer' avec un lien(URL) vers d'autres ressources comme des images ou des vidéos).

A noter que le format PDF n'est pas adapté au web même si la plupart des navigateurs récents et à jour intègrent un lecteur de pdf convenable(donc ça ne fonctionnera pas pour les navigateurs pas à jour ou un peu ancien comme IE en tout cas pas sans plugin rajouté par l'utilisateur) et sur mobile ça ne fonctionnera probablement pas (dans le navigateur en tout cas). La plupart des sites étant visualisé sur mobile autant s'adapter à l'utilisateur plutôt que de forcer celui ci à s'adapter au site(une règle essentielle du web garantissant l’accessibilité de tous aux contenus d'une page).
Le mieux est de convertir en HTML(ou mieux intégrer le contenu du pdf à la main au format HTML soi même parce qu'un convertisseur automatique ne prendre pas tout en compte correctement).

Pour la possibilité de télécharger ou imprimer un pdf c'est en général compris dans le lecteur pdf intégré au navigateurs(ou pas). Avoir le menu de l'application pdf en plus d'une page web ne sera pas clair ni ergonomique pour l'utilisateur.
Les images éventuelles (leur poids) contenus dans un pdf risquent aussi de poser des problèmes de temps de chargement(en plus des autres problèmes indiquées au dessus qui nécessitent la conversion du pdf par le logiciel) si elles ne sont pas vectorisées et adapté aux utilisateurs du web(et le débit de transfert des contenus d'une page).

C'est possible mais pas une bonne chose à faire pour les raisons que j'ai indiquées.
Bref si vous voulez un site correct renoncez au pdf pour passer à du pur HTML qui est le langage des pages web.
Surtout que PHP permet avec des modules(bibliothèques) de convertir du HTML en PDf pour une version téléchargeable ou imprimable.
Ou rien ne vous empêche d'ajouter un lien de téléchargement pour une version pdf (voir l'attribut HTML download) dans le HTML.

Bien sûr si le contenu d'un PDF est de plusieurs pages ce n'est pas pratique non plus pour le web d'avoir un contenu trop fournit(en plus du fait que ça implique des temps de chargement conséquents) qui oblige l'utilisateur à faire défiler plusieurs pages alors que HTML permet de créer des pages distinctes reliées par des liens, donc rendre l'expérience utilisateur meilleure (et l'inciter à rester pour consulter le site tandis que l'inverse aura l'effet inverse: le faire fuir devant un truc peu digeste dans sa présentation qui ne l'incitera pas à revenir ou même continuer sur le site + les problèmes de compatibilités que j'ai évoqués).
Si le web existe et fonctionne c'est avec HTML qui fournit de nombreux avantages. C'est contre-productif de ne pas en profiter et de ne pas penser avant tout à la diversité des utilisateurs et leur accessibilité aux contenus d'un site;)
0
Bonjour,
Merci beaucoup pour votre réponse.
J'aimerai bien rédiger mes fichiers avec html de les convertir ensuite, mais j'ai beaucoup de fichiers et je risque que le temps ne me suffira pas, parceque y'a d'autre choses afaire. (c'est un site intranet).
Quand vous avez dit:"un simple lien serait plus efficace." est ce que vous pouvez m'expliquer s'il vous plaït ?
0
Salut,
je voulais dire un lien vers le pdf dans une page HTML plutôt que d'avoir une iframe qui consiste à réunir une autre page dans une autre. Il me semblait avoir tenté d'expliquer les problèmes que cela engendre et pourquoi cela peut gêner l'utilisateur, pardon si je n'ai pas été clair.

<a href="monfichier.pdf" >consulter le fichier PDF</a>

Auquel vous pouvez ajouter une version avec l'attribut download, soumis à des réserves sur la compatibilité de la fonctionnalité dans les navigateurs comme on peut voir ici(chapitre Browser Support):
https://www.w3schools.com/TAGS/att_a_download.asp

<a href="monfichier.pdf" >consulter le fichier PDF</a>
Ou
<a href="monfichier.pdf" download >télécharger le fichier PDF</a>


En gros pour conclure il est mieux de s'adapter au fonctionnement du web comme il est et de suivre une série de pratiques appelées "bonnes pratiques" comme les recommandations du WAI ainsi que l'utilisation des technologies à leur fins et buts(HTML pour présenter un contenu web appelées page web) que de vouloir faire l'inverse et adapter le web à vos besoins sans tenir compte des contraintes et nécessités technique et structurelles du média.
Donc renoncer au pdf quand c'est possible qui n'est pas un format de publication du web pour du HTML, ne pas faire d'IFRAME quand ce n'est pas justifié et qu'il y a d'autres moyens de présenter des contenus dans une seule page(navigation dynamique scriptée avec JavaScript possible avec HTML par le DOM).
Si les contenus concernent plusieurs pages séparés ou qui vont ensemble mais qui y gagne en clarté à être séparé en plusieurs pages cela ne coûte rien de faire plusieurs pages et permet de présenter quelque chose de moins massif, imposant donc clair et facile pour l'utilisateur.

Pour tout média ou moyen de communication il y à 2 choses à prendre en compte en priorité et qui vont ensemble:
1)quelle est l'information ou les informations à présenter au public de la communication
2)l'utilisateur afin qu'il ait les meilleures chances d'avoir le message.

Ne pas en tenir compte complique et rends la communication de moins bonne qualité donc le public concerné sera moins apte ou volontaire à vouloir consulter le message.
Que ce soit en Intranet peut indiquer d'autres choses et d'autres spécificités mais en regardant sur le long terme un outil ciblé, adapté et efficace est plus performant qu'un outil peu performant et pas adapté aux moyens utilisés.
Sinon il faudrait voir dans le cas spécifique de votre cahier des charges s'il y a d'autres moyens autres qu'une page web qui peuvent être applicable, si par exemple c'est dans le cadre d'un réseau privé qui n'a pas besoin d'utiliser Internet en effet pour le transfert ou la consultation de documents il y a de meilleurs moyens que le web.
Mais bon Intranet pouvant dire tout un tas de choses(s'enregistrer sur un forum pour avoir des droits spécifiques est un Intranet car permet des possibilités en "interne" ou membre différentes possibilités que le public n'a pas, même chose pour une commande en ligne sur un site de commerce: il n'est bien sûr pas question que les données privées de l'utilisateur, ses achats ou ses moyens de paiements soient des informations disponibles au public et ces données sont internes à un organisme et les personnes dument enregistrées) et on s"éloigne de la question initiale ce n'est pas le sujet.

J'ai répondu ici pour le web en général sur un point précis, que ce soit dans le cadre du réseau public Internet et de son service WWW ou bien d'un réseau Internet WWW privé(Intranet pour interne à une organisation ou un groupe quel qu'il soit, exemple les utilisateurs de Facebook ayant un compte Versus les non utilisateurs de Facebook, ils n'ont pas les mêmes possibilités car les utilisateurs de Facebook ayant un compte ont accès à d'autres choses qui sont internes et fournies par l'entreprise Facebook) les considérations que j'ai essayé d'apporter restent vraies.
0
SARAH > R0b0x
6 juin 2021 à 12:54
Bonjour,

Oui merci c'est ça ce que je voulais, merci encore pour votre explication.

Bonne journée.
0
SARAH > R0b0x
6 juin 2021 à 15:30
Vous m'avez bien expliquez, merci beaucoup :)
0